asp.net邮件发送
邮件发送主要使用MailMessage、SmtpClient两个类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Net.Mail;
/// <summary>
///Email 的摘要说明
/// </summary>
public class Email
{
public Email()
{
//
//TODO: 在此处添加构造函数逻辑
//
}
/// <summary>
/// 初始化信件相关信息
/// </summary>
/// <param name="address"></param>
/// <returns></returns>
public MailMessage InitMailMessage(string address)
{
MailMessage mail = new MailMessage();
mail.From = new MailAddress(address); //发件人
mail.To.Add(address); //收件人
mail.Subject = "邮件发送测试"; //主题
mail.Body = "邮件测试内容"; //内容
//邮件主题和正文的编码格式
mail.IsBodyHtml = true; //邮件正文允许html编码
mail.Priority = MailPriority.Normal; //优先级
//密送——就是将信密秘抄送给收件人以外的人,所有收件人看不到密件抄送的地址
mail.Bcc.Add("1052647407@qq.com");
//抄送——就是将信抄送给收件人以外的人,所有的收件人可以在抄送地址处看到此信还抄送给谁
mail.CC.Add("1052647407@qq.com");
mail.Attachments.Add(new Attachment("D:\\1.doc")); //添加附件
return mail;
}
/// <summary>
/// 发送邮件
/// </summary>
/// <returns></returns>
public bool SendEmail()
{
SmtpClient client = new SmtpClient();
//获取或设置用于验证发件人身份的凭据。
client.Credentials = new System.Net.NetworkCredential("1052647407@qq.com", "密码XXXX");
//经过ssl(安全套接层)加密,163邮箱SSL协议端口号为465/994,关闭SSL时端口为25,
//qq邮箱SSL协议端口号为465或587,关闭SSL时端口同样为25,不过用SSL加密后发送邮件都失败,具体原因不知
//client.EnableSsl = true;
client.Port = 25; //端口号
client.Host = "smtp.qq.com"; //获取或设置用于 SMTP 事务的主机的名称或 IP 地址
try
{
client.Send(InitMailMessage("1052647407@qq.com"));
return true;
}
catch (System.Net.Mail.SmtpException ex)
{
return false;
}
}
}
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Net.Mail;
/// <summary>
///Email 的摘要说明
/// </summary>
public class Email
{
public Email()
{
//
//TODO: 在此处添加构造函数逻辑
//
}
/// <summary>
/// 初始化信件相关信息
/// </summary>
/// <param name="address"></param>
/// <returns></returns>
public MailMessage InitMailMessage(string address)
{
MailMessage mail = new MailMessage();
mail.From = new MailAddress(address); //发件人
mail.To.Add(address); //收件人
mail.Subject = "邮件发送测试"; //主题
mail.Body = "邮件测试内容"; //内容
//邮件主题和正文的编码格式
mail.SubjectEncoding = System.Text.Encoding.UTF8;
mail.BodyEncoding = System.Text.Encoding.UTF8;
mail.IsBodyHtml = true; //邮件正文允许html编码
mail.Priority = MailPriority.Normal; //优先级
//密送——就是将信密秘抄送给收件人以外的人,所有收件人看不到密件抄送的地址
mail.Bcc.Add("1052647407@qq.com");
//抄送——就是将信抄送给收件人以外的人,所有的收件人可以在抄送地址处看到此信还抄送给谁
mail.CC.Add("1052647407@qq.com");
mail.Attachments.Add(new Attachment("D:\\1.doc")); //添加附件
return mail;
}
/// <summary>
/// 发送邮件
/// </summary>
/// <returns></returns>
public bool SendEmail()
{
SmtpClient client = new SmtpClient();
//获取或设置用于验证发件人身份的凭据。
client.Credentials = new System.Net.NetworkCredential("1052647407@qq.com", "密码XXXX");
//经过ssl(安全套接层)加密,163邮箱SSL协议端口号为465/994,关闭SSL时端口为25,
//qq邮箱SSL协议端口号为465或587,关闭SSL时端口同样为25,不过用SSL加密后发送邮件都失败,具体原因不知
//client.EnableSsl = true;
client.Port = 25; //端口号
client.Host = "smtp.qq.com"; //获取或设置用于 SMTP 事务的主机的名称或 IP 地址
try
{
client.Send(InitMailMessage("1052647407@qq.com"));
return true;
}
catch (System.Net.Mail.SmtpException ex)
{
return false;
}
}
}