在ASP.NET中发送邮件(带SMTP验证、带附件)

需要三个类:MailMessageSmtpClientNetworkCredential

MailMessageSmtpClient名称空间是:

System.Net.Mail

NetworkCredential的名称空间是:

System.Net

核心代码

MailMessagemail = new MailMessage("发送方邮件地址", "接收方邮件地址");
mail.SubjectEncoding = Encoding.UTF8;
mail.Subject = "
邮件标题";
mail.IsBodyHtml = true; //
是否允许内容为HTML格式
mail.BodyEncoding = Encoding.UTF8;
mail.Body = "<strong>System.Net.Mail</strong>";
mail.Attachments.Add(new Attachment("E:\\foo.txt")); //
添加一个附件

SmtpClientsmtp = new SmtpClient("SMTP服务器地址");
smtp.Credentials = new
NetworkCredential("登录名", "密码"); //SMTP验证
smtp.Send(mail);

mail.Attachments.Dispose(); //
邮件发送完毕,释放对附件的锁定

MailMessage还有众多的功能,比如用To.Add()添加收件人,CC.Add()添加抄送,Bcc.Add()添加暗送,都比较简单,就不一一介绍了。

SmtpClient请确保发送服务器地址正确,否则可能出现由于目标机器积极拒绝,无法连接。的错误;同时请确保端口正确,否则可能出现远程主机强迫关闭了一个现有的连接的错误。

现在的SMTP服务器,几乎都要求验证,通过NetworkCredential来发送用户名和密码。

相关阅读

请参见MSDNMailMessage成员(System.Net.Mail)

如何用Encoding指定编码

ASP.NET中发送邮件时指定姓名

相关文章

ASP.NET中如何获取服务器端环境变量

ASP.NET中如何获取客户端浏览器信息

ASP.NET抓取网页内容-文字

ASP.NET抓取网页内容-图片

ASP.NET中获取服务器端主机名和IP

ASP.NET中获取客户端IP

System.Net.MailSystem.Web.Mail的区别

ASP.NET中发送邮件(带SMTP验证、带附件)

ASP.NET中发送邮件时指定姓名

Uri.AbsoluteUriUri.ToString()的区别

WebRequest发送CookieReferer

ASP.NET抓取网页内容-Post数据

ASP.NET抓取网页内容-防止重定向

ASP.NET抓取网页内容-保持登录状态

ASP.NET抓取网页内容-把当前会话带到WebRequest


你可能感兴趣的:(Web,.net,浏览器,asp.net,asp)