- 浏览: 70773 次
最新评论
.net1.1中,web应该可以使用System.Web.Mail发送邮件。.net2.0后.net framework中添加了一个System.Net.Mail的命名空间,用于发送邮件。
使用System.Web.Mail发送邮件
public class SendMail
{
public static void Send(string mailFrom, string maiFromlAccount,string mailFromPwd, string mailSmtpServer, IList<string> mailTo, IList<string> mailCC, IList<string> mailBCC, string mailTitle, string mailContent, IList<MailAttachment> mailAttachments,System.Text.Encoding encoding,MailFormat format)
{
MailMessage message = new MailMessage();
//定义SMTP邮件服务器需要身份认证
message.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1");
//认证的用户名
message.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", maiFromlAccount);
//认证密码
message.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", mailFromPwd);
string sMailTo = "";
foreach (string s in mailTo)
{
sMailTo += s + ";";
}
if (sMailTo == "")
{
throw new Exception("接收邮件不可以为空");
}
sMailTo = sMailTo.TrimEnd(';');
if (mailFrom.Trim() == "")
{
throw new Exception("发送邮件不可以为空");
}
message.From = mailFrom;
message.To = sMailTo;
if (mailCC.Count > 0)
{
string sMailCC = "";
foreach (string s in mailCC)
{
sMailCC += s + ";";
}
sMailCC = sMailCC.TrimEnd(';');
message.Cc = sMailCC;
}
if (mailBCC.Count > 0)
{
string sMailBCC = "";
foreach (string s in mailBCC)
{
sMailBCC += s + ";";
}
sMailBCC = sMailBCC.TrimEnd(';');
message.Bcc = sMailBCC;
}
message.Subject = mailTitle;
message.Body = mailContent;
message.BodyEncoding = encoding; //邮件编码
message.BodyFormat = format; //内容格式 html还是text
message.Priority = MailPriority.High; //设置发送的优先集
//附件
foreach (MailAttachment att in mailAttachments)
{
message.Attachments.Add(att);
}
SmtpMail.SmtpServer = mailSmtpServer;
SmtpMail.Send(message);
}
public static void SendText(string mailFrom, string maiFromlAccount, string mailFromPwd, string mailSmtpServer, IList<string> mailTo, IList<string> mailCC, IList<string> mailBCC, string mailTitle, string mailContent)
{
List<MailAttachment> attList = new List<MailAttachment>();
Send(mailFrom, maiFromlAccount, mailFromPwd, mailSmtpServer, mailTo, mailCC, mailBCC, mailTitle, mailContent, attList, Encoding.UTF8, MailFormat.Text);
}
public static void SendHTML(string mailFrom, string maiFromlAccount, string mailFromPwd, string mailSmtpServer, IList<string> mailTo, IList<string> mailCC, IList<string> mailBCC, string mailTitle, string mailContent)
{
List<MailAttachment> attList = new List<MailAttachment>();
Send(mailFrom, maiFromlAccount, mailFromPwd, mailSmtpServer, mailTo, mailCC, mailBCC, mailTitle, mailContent, attList, Encoding.UTF8, MailFormat.Html);
}
}
使用System.Net.Mail发送邮件
public class NetSendMail
{
public static void MailSend(string mailFrom, string maiFromlAccount, string mailFromPwd, string mailSmtpServer, IList<string> mailTo, IList<string> mailCC, IList<string> mailBCC, string mailTitle, string mailContent, IList<string> mailAttachments, System.Text.Encoding encoding, bool isBodyHtml)
{
MailMessage message = new MailMessage();
if (mailFrom.Trim() == "")
{
throw new Exception("发送邮件不可以为空");
}
message.From = new MailAddress(mailFrom);
if (mailTo.Count <= 0)
{
throw new Exception("接收邮件不可以为空");
}
foreach (string s in mailTo)
{
message.To.Add(new MailAddress(s));
}
if (mailCC.Count > 0)
{
foreach (string s in mailCC)
{
message.CC.Add(new MailAddress(s));
}
}
if (mailBCC.Count > 0)
{
foreach (string s in mailBCC)
{
message.Bcc.Add(new MailAddress(s));
}
}
message.Subject = mailTitle;
message.Body = mailContent;
message.BodyEncoding = encoding; //邮件编码
message.IsBodyHtml = isBodyHtml; //内容格式是否是html
message.Priority = MailPriority.High; //设置发送的优先集
//附件
foreach (string att in mailAttachments)
{
message.Attachments.Add(new Attachment(att));
}
SmtpClient smtpClient = new SmtpClient();
smtpClient.Host = mailSmtpServer;
smtpClient.Credentials = new NetworkCredential(maiFromlAccount, mailFromPwd);
smtpClient.Timeout = 1000;
smtpClient.EnableSsl = false; //不使用ssl连接
smtpClient.Send(message);
}
public static void MailSendText(string mailFrom, string maiFromlAccount, string mailFromPwd, string mailSmtpServer, IList<string> mailTo, IList<string> mailCC, IList<string> mailBCC, string mailTitle, string mailContent)
{
List<string> attList = new List<string>();
MailSend(mailFrom, maiFromlAccount, mailFromPwd, mailSmtpServer, mailTo, mailCC, mailBCC, mailTitle, mailContent, attList, Encoding.UTF8, false);
}
public static void MailSendHTML(string mailFrom, string maiFromlAccount, string mailFromPwd, string mailSmtpServer, IList<string> mailTo, IList<string> mailCC, IList<string> mailBCC, string mailTitle, string mailContent)
{
List<string> attList = new List<string>();
MailSend(mailFrom, maiFromlAccount, mailFromPwd, mailSmtpServer, mailTo, mailCC, mailBCC, mailTitle, mailContent, attList, Encoding.UTF8, true);
}
使用System.Web.Mail发送邮件
public class SendMail
{
public static void Send(string mailFrom, string maiFromlAccount,string mailFromPwd, string mailSmtpServer, IList<string> mailTo, IList<string> mailCC, IList<string> mailBCC, string mailTitle, string mailContent, IList<MailAttachment> mailAttachments,System.Text.Encoding encoding,MailFormat format)
{
MailMessage message = new MailMessage();
//定义SMTP邮件服务器需要身份认证
message.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1");
//认证的用户名
message.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", maiFromlAccount);
//认证密码
message.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", mailFromPwd);
string sMailTo = "";
foreach (string s in mailTo)
{
sMailTo += s + ";";
}
if (sMailTo == "")
{
throw new Exception("接收邮件不可以为空");
}
sMailTo = sMailTo.TrimEnd(';');
if (mailFrom.Trim() == "")
{
throw new Exception("发送邮件不可以为空");
}
message.From = mailFrom;
message.To = sMailTo;
if (mailCC.Count > 0)
{
string sMailCC = "";
foreach (string s in mailCC)
{
sMailCC += s + ";";
}
sMailCC = sMailCC.TrimEnd(';');
message.Cc = sMailCC;
}
if (mailBCC.Count > 0)
{
string sMailBCC = "";
foreach (string s in mailBCC)
{
sMailBCC += s + ";";
}
sMailBCC = sMailBCC.TrimEnd(';');
message.Bcc = sMailBCC;
}
message.Subject = mailTitle;
message.Body = mailContent;
message.BodyEncoding = encoding; //邮件编码
message.BodyFormat = format; //内容格式 html还是text
message.Priority = MailPriority.High; //设置发送的优先集
//附件
foreach (MailAttachment att in mailAttachments)
{
message.Attachments.Add(att);
}
SmtpMail.SmtpServer = mailSmtpServer;
SmtpMail.Send(message);
}
public static void SendText(string mailFrom, string maiFromlAccount, string mailFromPwd, string mailSmtpServer, IList<string> mailTo, IList<string> mailCC, IList<string> mailBCC, string mailTitle, string mailContent)
{
List<MailAttachment> attList = new List<MailAttachment>();
Send(mailFrom, maiFromlAccount, mailFromPwd, mailSmtpServer, mailTo, mailCC, mailBCC, mailTitle, mailContent, attList, Encoding.UTF8, MailFormat.Text);
}
public static void SendHTML(string mailFrom, string maiFromlAccount, string mailFromPwd, string mailSmtpServer, IList<string> mailTo, IList<string> mailCC, IList<string> mailBCC, string mailTitle, string mailContent)
{
List<MailAttachment> attList = new List<MailAttachment>();
Send(mailFrom, maiFromlAccount, mailFromPwd, mailSmtpServer, mailTo, mailCC, mailBCC, mailTitle, mailContent, attList, Encoding.UTF8, MailFormat.Html);
}
}
使用System.Net.Mail发送邮件
public class NetSendMail
{
public static void MailSend(string mailFrom, string maiFromlAccount, string mailFromPwd, string mailSmtpServer, IList<string> mailTo, IList<string> mailCC, IList<string> mailBCC, string mailTitle, string mailContent, IList<string> mailAttachments, System.Text.Encoding encoding, bool isBodyHtml)
{
MailMessage message = new MailMessage();
if (mailFrom.Trim() == "")
{
throw new Exception("发送邮件不可以为空");
}
message.From = new MailAddress(mailFrom);
if (mailTo.Count <= 0)
{
throw new Exception("接收邮件不可以为空");
}
foreach (string s in mailTo)
{
message.To.Add(new MailAddress(s));
}
if (mailCC.Count > 0)
{
foreach (string s in mailCC)
{
message.CC.Add(new MailAddress(s));
}
}
if (mailBCC.Count > 0)
{
foreach (string s in mailBCC)
{
message.Bcc.Add(new MailAddress(s));
}
}
message.Subject = mailTitle;
message.Body = mailContent;
message.BodyEncoding = encoding; //邮件编码
message.IsBodyHtml = isBodyHtml; //内容格式是否是html
message.Priority = MailPriority.High; //设置发送的优先集
//附件
foreach (string att in mailAttachments)
{
message.Attachments.Add(new Attachment(att));
}
SmtpClient smtpClient = new SmtpClient();
smtpClient.Host = mailSmtpServer;
smtpClient.Credentials = new NetworkCredential(maiFromlAccount, mailFromPwd);
smtpClient.Timeout = 1000;
smtpClient.EnableSsl = false; //不使用ssl连接
smtpClient.Send(message);
}
public static void MailSendText(string mailFrom, string maiFromlAccount, string mailFromPwd, string mailSmtpServer, IList<string> mailTo, IList<string> mailCC, IList<string> mailBCC, string mailTitle, string mailContent)
{
List<string> attList = new List<string>();
MailSend(mailFrom, maiFromlAccount, mailFromPwd, mailSmtpServer, mailTo, mailCC, mailBCC, mailTitle, mailContent, attList, Encoding.UTF8, false);
}
public static void MailSendHTML(string mailFrom, string maiFromlAccount, string mailFromPwd, string mailSmtpServer, IList<string> mailTo, IList<string> mailCC, IList<string> mailBCC, string mailTitle, string mailContent)
{
List<string> attList = new List<string>();
MailSend(mailFrom, maiFromlAccount, mailFromPwd, mailSmtpServer, mailTo, mailCC, mailBCC, mailTitle, mailContent, attList, Encoding.UTF8, true);
}
发表评论
-
使用OctreeQuantizer提高gdi+绘图质量
2012-06-05 09:38 1511.net中gdi+绘制的图形质量很少,原因是gdi+使用的是2 ... -
.net使用自定义类属性
2012-05-22 15:06 4326.net中可以使用Type.GetCustomAttribut ... -
.net计算线性回归算数
2012-04-18 16:56 1328用到前一篇的.net实现Excel的几个函数中的方法。 // ... -
.net实现Excel中的几个函数
2012-04-18 16:53 1674这几天做一个数值的线性回归分析,用.net实现了几个有关于计算 ... -
.net使用gdi+绘半饼图
2012-04-13 16:39 708前两天web项目中遇到要绘一个半饼图,图表控件中没有这样的图, ... -
.net使用SqlBulkCopy导入数据
2012-04-13 15:45 9446.net2.0后ado.net提供了一个快速导入sqlserv ... -
重写.net的winfrom控件
2012-04-09 09:27 1604这几天做winfrom项目,为个改变按钮样式,使用到了重写控件 ...
相关推荐
mfix官方下载的源代码,详细信息科访问 https://mfix.netl.doe.gov/ ,或者直接度娘mfix
这是朋友找到的一个关于ASP.NET AND SQL 用C#语言汇编而成的留言板,简单易学。 希望和大家分享下
包含vbnet的各个技术,可以和教材结合使用,方便学习
网络管理与建设,asp.netl框架,实用小技术
U-Netl论文相关资料资料
在此模板中... :lipstick: 使用Fira Code字体的代码突出显示 :mage: CLI工具 :grinning_face_with_... ://jungin.netlify.com/ Zero的博客: : 乔纳森(Jonathan)的博客: : @ deveely-log: ://deveely-log.netl
在此模板中... :lipstick: 使用Fira Code字体的代码突出显示 :mage: CLI工具 :grinning_face_with_smiling_eyes: 表情符号(表情符号) :speaking_head: 社交分享功能... @ deveely-log: ://deveely-log.netl
Svenbook 该项目是使用版本11.2.6生成的。 怎么跑 服务 为开发服务器运行ng serve 。... 如果您更改任何源文件,该应用程序将自动重新加载。 Docker构建和服务 运行npm run docker:all:dev... 访问https://svenbook.netl
该程序可帮助您以完整尺寸下载社交社区 NETLOG (www.netlog.com) 成员的图片。 该工具只需要用户名和国家/地区代码作为输入。
与您的Netlify帐户关联的电子邮件地址将收到一封邀请您作为身份用户的电子邮件-单击电子邮件中的“接受”以设置新密码,然后导航到您站点上的/admin登录。 现在您已经准备就绪,可以开始编辑内容了! 注意:如果将...
国家能源技术实验室(NETL)已开发出简化的能源-水原型模型,作为对能源-水相互作用进行全面建模的更大努力的一部分。 NETL水能模型(NWEM)原型通过国家能源建模系统(NEMS)发电量预测,将各种有关供水,水供应和...
与您的Netlify帐户关联的电子邮件地址将收到一封邀请您作为身份用户的电子邮件-单击电子邮件中的“接受”以设置新密码,然后导航到您站点上的/admin登录。 现在您已经准备就绪,可以开始编辑内容了! 注意:如果将...
MFiX (Multiphase Flow with Interphase eXchanges ) 是由NETL (National Energy Technology Laboratory) 开发并维护的开源软件,致力于解决实际装置中的多相流问题 (Open source multiphase flow modeling for real...
Github用户搜索是一个简单的React应用,使用:react,react-dom,react-bootstrap,react-router-bootstrap,axios和Github Api。 注意:创建一个本地环境变量文件“ .env.local ”,并使用您的... :rocket: Netl
java采购供应平台源码NetLogo 的 GIS 扩展 这个包包含 NetLogo GIS 扩展。 建造 sbt package 如果编译成功,将创建gis.jar 。 使用 这个扩展为 NetLogo 添加了 GIS(地理信息系统)支持。 它提供了将矢量 ...NetL
此仓库包含用于探索香料网表自动完成的代码。 快速开始 首先安装依赖项(如下所示)。 然后按照说明尝试使用任何技术。 (使用Python 3) pip install -r ... python train_knn.py path/to/netlist path/to/netl
考察环网上局中人在半径为1和2的范围内与邻居的局部策略互动,在以局中人整体...基于Netl- ogo仿真系统,编制了针对本文模型的局部互动仿真模拟实验程序。论文的结果对于解决社会和经济领域中的交互问题提供策略指导。
OCLC向全球图书馆提供netLibrary电子图书共2页.pdf.zip
近年来氨法吸收二氧化碳成为化学吸收方法捕集二氧化碳研究方面的热点,...对滴定过程进行了深入的分析,认为美国能源实验室(NETL)发展的NH3、CO2-3、HCO3-测量方法存在问题。滴定方法相对于Raman光谱和NMR方法的缺点是