C#用SMTP方式发送邮件

今天有个需求,需要在系统的某个事件执行后同时像一个用户发送一封提示邮件,经过一番查找后决定使用SMTP客户端来完成这个功能.
下面是发送邮件时的代码.

//初始化邮件服务器地址
string smtpServer = "SmtpServerUrl";
//设置邮件服务器发送端口,默认邮箱SMTP服务器端口是25
int port = 25;
//初始化发送者邮箱
string fromAddress = "sender@domain.com";
//初始化发送者密码
string fromPassword = "123456";
//初始化接收者邮箱
string[] toAddress = { "receiver@domain.com" }; //初始化抄送的邮箱
string[] ccAddress = { "receiver@domain.com" };
//初始化邮件标题
string subject = "测试";
//初始化邮件内容
string mailContent = string.Format("这里写邮件内容");
//新建一封邮件
MailMessage message = new MailMessage();
//设置邮件发送地址
message.From = new MailAddress(fromAddress);
//设置邮件内容为HTML类型(支持网页内容排版),非HTML内容则设置为false
 message.IsBodyHtml = true;
//设置邮件标题
message.Subject = subject;
//设置邮件内容
message.Body = mailContent;
//设置回复地址(这个可以忽略)
message.ReplyTo = new MailAddress(fromAddress);
//设置接收者邮箱地址
foreach (string sendTo in toAddress)
{
    message.To.Add(new MailAddress(sendTo));
}
//设置抄送邮箱地址
foreach (string copyTo in ccAddress)
{
    message.CC.Add(new MailAddress(copyTo));
}

//初始化Smtp服务客户端
SmtpClient smtp = new SmtpClient(smtpServer);
//设置Smtp服务端口
smtp.Port = port;
//登陆邮箱服务器
smtp.Credentials = new NetworkCredential(fromAddress, fromPassword);
//发送邮件
smtp.Send(message);

就此OK...

备注:以上参数中SMTP服务器的地址是指的发送邮件用的邮箱的SMTP服务地址.

posted @ 2011-11-11 15:16  安培昌浩  阅读(186)  评论(0编辑  收藏  举报