您的位置:首页 > 大数据 > 人工智能

.net SMTP发送Email 更新(可带附件)

2013-07-02 13:54 423 查看
public static void sendEmail(string toAddress, string emailbody)

{

var fromAddress = ConfigurationManager.AppSettings["EmailAddress"];

string fromPassword = ConfigurationManager.AppSettings["EmailPassword"].ToString();

const string subject = "Job Recommendation";

var smtp = new SmtpClient

{

Host = ConfigurationManager.AppSettings["SmtpServer"].ToString(),

Port = int.Parse(ConfigurationManager.AppSettings["SmtpPort"]),

EnableSsl = true,

DeliveryMethod = SmtpDeliveryMethod.Network,

UseDefaultCredentials = false,

Credentials = new NetworkCredential(fromAddress, fromPassword)

};

using (var message = new MailMessage(fromAddress, toAddress, subject, HttpUtility.HtmlEncode(emailbody)))

{

smtp.Send(message);

}

}

<add key="EmailAddress" value="**********@gmail.com"/>//Email Address

<add key="EmailPassword" value="*********"/> //Emial PWD

<add key="SmtpServer" value="smtp.gmail.com"/>

<add key="SmtpPort" value="587"/>

<--带附件版本->

var fromAddress = "allenyinj@gmail.com";

string fromPassword = "yj1989120";

const string subject = "CV";

var smtp = new SmtpClient

{

Host = "smtp.gmail.com",

Port = 587,

EnableSsl = true,

DeliveryMethod = SmtpDeliveryMethod.Network,

UseDefaultCredentials = false,

Credentials = new NetworkCredential(fromAddress, fromPassword)

};

MailMessage email=new MailMessage(fromAddress, "allen.yin.jun@gmail.com");

email.Subject = "INLINE attachment TEST";

email.IsBodyHtml = true;

string attachmentPath = "C:\\3.jpeg";

Attachment inline = new Attachment(attachmentPath);

inline.ContentDisposition.Inline = true;

inline.ContentDisposition.DispositionType = DispositionTypeNames.Inline;

//inline.ContentId = "1";

//inline.ContentType.MediaType = "image/png";

inline.ContentType.Name = Path.GetFileName(attachmentPath);

email.Attachments.Add(inline);

email.Body = "test";

smtp.Send(email);

email.Dispose();

//如果没有路径,用Stream

Attachment letter = new Attachment(FileUploadLetter.FileContent, FileUploadLetter.PostedFile.ContentType);

letter.ContentDisposition.Inline = true;

letter.ContentDisposition.DispositionType = DispositionTypeNames.Inline;

//inline.ContentId = "1";

letter.ContentType.MediaType = FileUploadLetter.PostedFile.ContentType;

letter.ContentType.Name = Path.GetFileName(FileUploadLetter.PostedFile.FileName);

letter.Name = Path.GetFileName(FileUploadLetter.PostedFile.FileName);

//如果希望通过匿名邮件发送 则

var smtp = new SmtpClient

{

Host = "serverName",

Port = 25, //匿名发送端口

EnableSsl = false,

DeliveryMethod = SmtpDeliveryMethod.Network,

UseDefaultCredentials = false,

//Credentials = new NetworkCredential(fromAddress, fromPassword)

};

SMTP发送的Content,Title根据Static.html自动生成

var emailContent = File.ReadAllText(HttpContext.Current.Server.MapPath("/EmailContent/EmailContent.html")).Replace('\r', ' ').Replace('\n', ' ');

Replace('\r', ' ').Replace('\n', ' ');很重要,否则会报错。、

MailMessage email = new MailMessage(fromAddress, "Allen_Yin@iclp.com.cn");

email.Subject = emailContent.Substring(0, emailContent.IndexOf('<')); ;

email.IsBodyHtml = true;

email.Body = emailContent.Substring(emailContent.IndexOf('<')).Replace("$USERNAME", userName).Replace("$POINT", point);

/EmailContent/EmailContent.html 里面

Email Title!

<div>

<div>

<h1>Congratulation!</h1>

<h5>$USERNAME $POINT</h5>

</div>

</div>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: