asp.net 2.0 发邮件 就这么简单
目前大家看到的都是通过Code来进行邮件发送的,而在Asp.Net2.0中Framework考虑更多的是配置式,也就是通过config方式来进行应用程序的控制,而不是把绝大多数的参数都硬编码,查阅SDK后可以看到有个mailSettings的配置节,在SDK用红色文字显注的表示了“此属性在 .NET Framework 2.0 版中是新增的” ,这个配置节属于<system.net>节下的。
接下来我们把上面的代码用一些配置信息来取得,马上会得知你的Code是多么简洁。
config:
<system.net>
<mailSettings>
<smtp from="yandavid@163.com">
<network host="smtp.163.com" password="dw19840403" port="25" userName="yandavid" defaultCredentials="false"/>
</smtp>
</mailSettings>
</system.net>
代码文件:
using System.Net.Mail;
string subject = "test";
string body = "hello";
System.Net.Configuration.SmtpSection smtpSec = (System.Net.Configuration.SmtpSection)ConfigurationManager.GetSection("system.net/mailSettings/smtp");
using (System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage(smtpSec.From, "yandavid@163.com", subject, body))
{
System.Net.Mail.SmtpClient mailClient = new System.Net.Mail.SmtpClient();
mailClient.Send(message);
}
就这么简单 邮件就发出去了.
/// <summary>
/// ASP。NET2.0 发送电子邮件
/// </summary>
/// <param name="strSmtpServer">Smtp地址</param>
/// <param name="port">端口号码</param>
/// <param name="strFrom">发件人</param>
/// <param name="strFromPass">密码</param>
/// <param name="strto">收见人</param>
/// <param name="strSubject">邮件主题</param>
/// <param name="strBody">邮件内容</param>
public static void SendSMTPEMail(string strSmtpServer,int port, string strFrom, string strFromPass, string strto, string strSubject, string strBody)
{
System.Net.Mail.SmtpClient client = new SmtpClient(strSmtpServer,port);
client.UseDefaultCredentials = false;
client.Credentials = new System.Net.NetworkCredential(strFrom, strFromPass);
client.DeliveryMethod = SmtpDeliveryMethod.Network;
System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage(strFrom, strto, strSubject, strBody);
message.BodyEncoding = System.Text.Encoding.UTF8;
message.IsBodyHtml = true;
client.Send(message);
}
- 上一篇 »python 发邮件乱码
- 下一篇 »asp.net 2.0中预设的cookie