asp.net System.Net.Mail 发送邮件

作者:佚名     字体:[增加 减小]    类型:转载
一个师弟发了段代码给我,说调试了很久发送邮件都没有成功。自己使用过程中,也发现了很多问题,但最简单的问题是“发件方”地址根本不支持smtp发送邮件。
举例:
复制代码 代码如下:

163.com的邮箱在早期申请的是支持的,后面申请的都是不支持。
21cn.com似乎现在已经放弃了smtp支持,可能只有缴费用户才可以。
qq.com的邮箱需要在用户帐户里面设置。

我拿了个sina.com的邮箱进行测试,也需要在后台里面的

才可以发送。详细代码如下:
复制代码 代码如下:

MailAddress from = new MailAddress("sosuo8@sina.com");
MailAddress to = new MailAddress("ahuinan@21cn.com");
MailMessage message = new MailMessage(from, to);
message.Subject = "阿会楠的来信";
message.Body = "你好!测试而已";
SmtpClient client = new SmtpClient();
client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.Port = 25;
client.Host = "smtp.sina.com";
client.Credentials = new System.Net.NetworkCredential("sosuo8@sina.com", "123");
Response.Write("发送一份邮件到" + to.User + "," + to.Host +"," + client.Host);
client.Send(message);

别忘了引入命名空间:
复制代码 代码如下:

using System.Net;
using System.Net.Mail ;