来源:红黑联盟

方法1:cs代码

using System.Net.Mail;
using System.Net;
         string mailServerName = "smtp.qq.com";  //发送邮件的SMTP服务器
string mailFrom = "xxxxxx@qq.com"; //发件人邮箱(用126的邮件服务器,就必须用126邮箱的用户名)
string mailTo = "xxxxxx@qq.com"; //收件人邮箱
string subject = "用代码方式发送邮件";//邮件主题
string body = "这里是邮件正文了"; //邮件正文 using (MailMessage message = new MailMessage(mailFrom, mailTo, subject, body))
{
//SmtpClient是发送邮件的主体,这个构造函数是告知SmtpClient发送邮件时使用哪个SMTP服务器
SmtpClient mailClient = new SmtpClient(mailServerName);
//将认证实例赋予mailClient,也就是访问SMTP服务器的用户名和密码
mailClient.Credentials = new NetworkCredential("xxx", "xxxxxx");
//最终的发送方法
mailClient.Send(message);
}
Response.Write("发送成功");

方法2:cs代码+web.config

在web.confg中添加如下代码:(本人试过了,把下面这段代码放在<configuration>  </configuration>节内部即可。)

 <system.net>
<!--如果是第三方smtp服务器,需要指定userName 和 password,并根据host指定发件人邮件地址from
测试发现from值必须是userName值加上指定的smpt服务器才行,而且是必须指定的
如果是本机smtp服务器,只需指定defaultCredentials="true"即可-->
<mailSettings>
<smtp deliveryMethod="Network" from ="xxxxxx@qq.com" >
<network host="smtp.qq.com" port="25" userName="xxx" password="xxxxxx" />
</smtp>
</mailSettings>
</system.net>

下面我自己的实验截图

CS代码部分:

using System.Net.Mail;
 using (MailMessage message = new MailMessage())
{
message.To.Add(new MailAddress("xxxxxxx@qq.com")); //收件人邮箱
message.Subject = "通过配置文件设置发送邮件";//邮件主题
message.Body = "这里是邮件正文了"; //邮件正文 SmtpClient mailClient = new SmtpClient();
mailClient.Send(message);
Response.Write("发送成功");
}

方法3:cs代码(函数)

using System.Net.Mail;
using System.Text;
     public bool SendEmail(string mailTo, string mailSubject, string mailContent)
{
// 设置发送方的邮件信息,例如使用网易的smtp
string smtpServer = "smtp.qq.com"; //SMTP服务器
string mailFrom = "XXXXX@qq.com"; //登陆用户名
string userPassword = "XXX";//登陆密码
// 邮件服务设置 SmtpClient
SmtpClient smtpClient = new SmtpClient();
smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;
//指定电子邮件发送方式
smtpClient.Host = smtpServer;
//指定SMTP服务器
smtpClient.Credentials = new System.Net.NetworkCredential(mailFrom, userPassword);//用户名和密码
// 发送邮件设置
MailMessage mailMessage = new MailMessage(mailFrom, mailTo); // 发送人和收件人
mailMessage.Subject = mailSubject;//主题
mailMessage.Body = mailContent;//内容
mailMessage.BodyEncoding = Encoding.UTF8;//正文编码
mailMessage.IsBodyHtml = true;//设置为HTML格式
mailMessage.Priority = MailPriority.Low;//优先级
try
{
smtpClient.Send(mailMessage);// 发送邮件
return true;
}
catch (SmtpException ex)
{
return false;
}
} bool result = this.SendEmail("xxxxxxxx@qq.com", "邮件EMAIL主题", "邮件Email内容");
if (result)
{
Response.Write("发送成功");
}
else
{
Response.Write("发送失败");
}

实验的感觉:

通过SMTP发送邮件,方法简单。但是现如今好多网站的SMTP服务器限制的比较严,可能会导致发送失败。

ASP.NET 3.5 中实现发送email电子邮件的更多相关文章

  1. asp.net发送E-mail

    发送电子邮件也是项目开发当中经常用到的功能,这里我整理了一个发送电子邮件(带附件,支持多用户发送,主送.抄送)的类库,供大家参考. 先上两个实体类,用于封装成Mail对象. /// <summa ...

  2. ASP.NET结合COM组件发送Email

    在开发电子邮件发送程序的时候,我们经常需要使用到相应的组件,其实不需要第三方的组件(例如:Jmail)照常可以做到发送Email的功能. 在系统目录(如c:/winnt或c:/windows)的sys ...

  3. 发送email给列表中的邮箱--python

    #!/usr/bin/python # -*- coding: utf-8 -*- # from email.Header import Header from email.MIMEText impo ...

  4. 如何在ASP.NET Web站点中统一页面布局[Creating a Consistent Layout in ASP.NET Web Pages(Razor) Sites]

    如何在ASP.NET Web站点中统一页面布局[Creating a Consistent Layout in ASP.NET Web Pages(Razor) Sites] 一.布局页面介绍[Abo ...

  5. .NET跨平台之旅:ASP.NET Core从传统ASP.NET的Cookie中读取用户登录信息

    在解决了asp.net core中访问memcached缓存的问题后,我们开始大踏步地向.net core进军——将更多站点向asp.net core迁移,在迁移涉及获取用户登录信息的站点时,我们遇到 ...

  6. ASP.NET MVC: Razor中的@:和语法

    本文将讨论新版Razor里视图引擎中支持的两个有用的语法功能:@:和<text>语法. 用Razor实现流畅编程 ASP.NET MVC 3配有一个新的名为“Razor”的视图引擎选项(除 ...

  7. Spring 发送 Email

    本文转自:http://zl198751.iteye.com/blog/757617 看到了本文,收获颇丰,感谢之至! 首先介绍下Email的发送流程: 需要选中smtp邮件服务器,Yahoo不提供免 ...

  8. 使用PHP发送email进行账号激活或者密码修改操作

    使用PHPMailer编写发送邮件 PHPMailer需PHP的socket扩展支持,而PHPMailer链接qq域名邮箱时需要ssl加密方式(qq邮箱最近做了限制,新开域名邮箱不再允许通过smtp协 ...

  9. 【ASP.NET Web API教程】6.2 ASP.NET Web API中的JSON和XML序列化

    谨以此文感谢关注此系列文章的园友!前段时间本以为此系列文章已没多少人关注,而不打算继续下去了.因为文章贴出来之后,看的人似乎不多,也很少有人对这些文章发表评论,而且几乎无人给予“推荐”.但前几天有人询 ...

随机推荐

  1. linux常用命令:2权限管理命令

    权限管理命令 1.权限管理命令:chmod 命令名:chmod 命令英文原意:change the permissions mode of a file 命令所在路径:/bin/chmod 执行权限: ...

  2. 20145210 《Java程序设计》第07周学习总结

    教材学习内容总结 第十二章 Lambda 12.1 认识Lambda语法 •Lambda 教材的引入循序渐近.深入浅出 •如果使用JDK8的话,可以使用Lambda特性去除重复的信息,例: Compa ...

  3. 针对无线信道衰落特性分析3G,4G,5G的关键技术异同点

    1 无线信道特性对3G系统的影响 2

  4. css让一个正方形方块垂直居中

    这里有top和margin-top的区别,top(left,right,bottom)是绝对定位,要用position,margin-top是相对定位,相对于相邻的元素或者父元素. 代码如下: < ...

  5. Shell 条件表达式汇总

    条件表达式 文件表达式 if [ -f  file ]    如果文件存在if [ -d ...   ]    如果目录存在if [ -s file  ]    如果文件存在且非空 if [ -r f ...

  6. Qt之QPropertyAnimation

    简述 QPropertyAnimation类定义了Qt的属性动画. QPropertyAnimation以Qt属性做差值,作为属性值存储在QVariants中,该类继承自QVariantAnimati ...

  7. 跟开涛老师学shiro -- 身份验证

    身份验证,即在应用中谁能证明他就是他本人.一般提供如他们的身份ID一些标识信息来表明他就是他本人,如提供身份证,用户名/密码来证明. 在shiro中,用户需要提供principals (身份)和cre ...

  8. archlinux安装图形界面

    安装xorg 检查显卡驱动 $ lspci | grep VGA install X server wiki Then use the $ startx to start the X server, ...

  9. spring学习笔记--quartz和定时任务执行

    前言: 最近要写一个定时任务, 用于同步数据. 以往这种涉及数据库操作的定时脚本, 都会采用python+crontab的方式来实现. 这次画风大转, 决定试试用spring+quartz来实现一下. ...

  10. spring学习笔记---第三方SDK(Rest API)和Jaskson的巧用

    前言: 其实我以前一直不懂电商, 以及电商中所涉及的业务概念. 对于SKU等名词, 觉得有些玄乎. 对其背后的数据模型, 也有莫名的未知恐惧感: 庞大而理不清头绪. 不过最近有机会接触了微商(有赞), ...