当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 在ASP.NET2.0中通过Gmail发送邮件的代码

ASP.NET
二级域名Cookie问题的解决方法
如何为asp.net网站项目添加子项目
asp.net用url重写URLReWriter实现任意二级域名
asp.net 序列化and反序列化演示
asp.net Timer的使用方法
AjaxControlToolKit DropDownExtender(下拉扩展控件)使用方法
AjaxControlToolKit CalendarExtender(日历扩展控件)的使用方法
让GridView只显示特定用户的数据的方法
让GridView只更新某些特定的数据的方法
ajaxControlToolkit中CascadingDropDown的用法说明
axp.net ScriptManager的简单用法
把程序集安装到全局程序集缓存中的步骤
引用全局程序集缓存内的程序集的方法
asp.net COOKIES需要注意的一点
asp.net UrlReWriter使用经验小结
页面导出为Excel的时间格式的问题
asp.net cookie清除的代码
Asp.net XMLHTTP封装类(GET,Post发送和接收数据)
ASP.NET XmlHttp跨域访问实现代码
Asp.NET 随机码生成基类(随机字母,随机数字,随机字母+数字)

在ASP.NET2.0中通过Gmail发送邮件的代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 169 ::
收藏到网摘: n/a

我们有时候需要发送邮件给访问网页的用户,例如,注册的时候,发一确认信什么的。那么,在ASP.NET2.0中该如果操作呢? 在这里我们主要是使用Gmail,究其原因,是因为,我在使用Gmail的邮箱发送邮件的时候,遇到一小小的困难,而使用163等邮箱的时候,没遇到这个问题。
在ASP.NET2.0中,发送邮件是很简单的,我们主要使用来自命名空间System.Net.Mail中的几个类,MailMessage和SmtpClient。
核心代码是很简洁的,如下:
复制代码 代码如下:

string to = "这里填写接收者的Email地址";
string from = "这里填写发送者的Email地址";
string subject = "这里写邮件的主题";
string body = @"这里写邮件的内容";
MailMessage message = new MailMessage(from, to, subject, body);
//SmtpClient client = new SmtpClient("smtp.gmail.com", 465);
SmtpClient client = new SmtpClient("smtp.gmail.com", 587);
client.Credentials = new NetworkCredential("Gmail帐户", "Gmail密码");
client.EnableSsl = true;
client.Send(message);

如代码所示,这发送Email是一件很简单的事情。这里特别提出来,是因为有几个小地方,是值得留心的,不然,就会觉得莫名其妙了。
首先,用于发送Email的Gmail帐户,需要把POP功能打开。
其次,注意Gmail所使用的端口号,有465和587两个(有没有其他的,我就没去仔细调查,如有遗漏,请海涵)。按照Gmail的说明文档,我一开始是使用465端口的,总是超时,邮件不能成功发送。但是,我使用outlook的时候,也是使用465端口,可以成功发送和接收邮件。这就把我弄糊涂了。晃悠了一圈以后,得到一个新的端口号,587。在ASP.NET里,我们使用587端口,是可以成功发送邮件的。想不明白,为什么Gmail的说明文档里,仅仅是提到了465,而忽略了587。
希望对你有帮助