C#.NET发送邮件的实例代码
2017-06-17 20:23:30
.net
这篇文章介绍了C#.NET发送邮件的实例代码,有需要的朋友可以参考一下,希望对你有所帮助
using System; using System.Collections.Generic; using System.Text; using System.Net.Mail; using System.Net; namespace MyQuery.Utils { /// <summary> /// 封装邮件处理 /// by 贾世义 2011-6-3 /// </summary> public static class MailHelper { private static string smtpHost = null; private static int smptPort = 25; private static bool smtpIsUserCredentials = false; private static string smtpCredentialAccount = null; private static string smtpCredentialPassword = null; /// <summary> /// 设置发送邮件参数 /// </summary> /// <param name="host">smtp服务器地址或名称</param> /// <param name="port">smtp服务端口 一般为25</param> /// <param name="isUserCredentials">是否需要认证</param> /// <param name="account">需要认证时的用户</param> /// <param name="password">需要认证时的用户的密码</param> public static void SetParameters(string host, int port, bool isUserCredentials, string account, string password) { smtpHost = host; smptPort = port; smtpIsUserCredentials = isUserCredentials; smtpCredentialAccount = account; smtpCredentialPassword = password; } /// <summary> /// 设置发送邮件参数 取配置 /// </summary> private static void setParameters() { if (String.IsNullOrEmpty(smtpHost)) { smtpHost = WebHelper.GetAppConfig("SmtpHost"); smptPort = DataHelper.GetIntValue(WebHelper.GetAppConfig("SmptPort"), 25); smtpIsUserCredentials = Constants.TRUE_ID.Equals(WebHelper.GetAppConfig("SmtpIsUserCredentials")); smtpCredentialAccount = WebHelper.GetAppConfig("SmtpCredentialAccount"); smtpCredentialPassword = WebHelper.GetAppConfig("SmtpCredentialPassword"); } } /// <summary> /// 发送邮件 发送邮件错误不会抛出异常 /// </summary> /// <param name="receivers">收件人</param> /// <param name="title">标题/主题</param> /// <param name="content">信件内容</param> /// <param name="sender">发件人 空则取系统配置</param> public static void SendMail(string receivers, string title, string content, string sender) { if (!String.IsNullOrEmpty(receivers)) { //初始化参数 setParameters(); if (!String.IsNullOrEmpty(smtpHost)) { try { SmtpClient smtp = new SmtpClient(smtpHost, smptPort); if (smtpIsUserCredentials) { smtp.UseDefaultCredentials = true; smtp.Credentials = new NetworkCredential(smtpCredentialAccount, smtpCredentialPassword); ; } smtp.DeliveryMethod = SmtpDeliveryMethod.Network; if (String.IsNullOrEmpty(sender)) { sender = smtpCredentialAccount; } foreach (string receiver in DataHelper.GetStrings(receivers)) { MailMessage msg = new MailMessage(sender, receiver, title, content); msg.BodyEncoding = Encoding.UTF8; msg.SubjectEncoding = Encoding.UTF8; msg.IsBodyHtml = true; smtp.Send(msg); msg.Dispose(); } } catch { } } } } } } |