System.Net.Mail会读取web.config中的配置,所以我们要在web.config中进行配置,配置如下:
代码如下 |
复制代码 |
pserver" port="25" userName="username" password="password" defaultCredentials="true" />
|
配置好后将它添加到web.config文件中,放置在节点中,不要忘了引入System.Net.Mail命名空间。接下来我们看看几种发邮件的写法:
1.Asp.net 发送普通文本邮件
代码如下 |
复制代码 |
try
{
MailMessage message = new MailMessage();
//收件人
message.To.Add(new MailAddress("google1@gmail.com"));
message.To.Add(new MailAddress("google2@gmail.com"));
//邮件标题
message.Subject = "邮件标题";
//邮件正文
message.Body = "邮件内容";
SmtpClient smtpClient = new SmtpClient();
smtpClient.Send(message);
}
catch
{
}
|
Send()方法可能会抛出异常,所以我们使用try来执行方法。
2.Asp.net 发送html格式的邮件
//只需将IsBodyHtml设置为true
message.Body = "这是一封html格式;的邮件";
message.IsBodyHtml = true;3.Asp.net 发送带附件的邮件
//将附件添加进来即可
message.Attachments.Add(new Attachment("filename"));本篇介绍了在Asp.net中使用System.Net.Mail发送邮件的方法,如果你还想了解更多的话,可以在MSDN中找找System.Net.Mail命名空间来了解下。
举例:
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 ;
|