简要咨询咨询QQ网站导航网站搜索手机站点联系我们设为首页加入收藏 

smtp发送带附件的邮件代码分享

来源:易贤网   阅读:2948 次  日期:2014-11-28 10:58:41

温馨提示:易贤网小编为您整理了“smtp发送带附件的邮件代码分享”,方便广大网友查阅!

该方式直接保存为HTML文件,也可以是文本文件,其它格式效果不是很好

代码如下:

MailMessage mmsg = new MailMessage();

mmsg.Subject = "邮件标题";

mmsg.Body = "邮件内容";

mmsg.To.Add("接收邮箱

byte[] bytes = System.Text.Encoding.Default.GetBytes

(@"<table><tr><td width=150>1234567891234567

</td><td width=80>12345678</td></tr></table>");

MemoryStream ms = new MemoryStream(bytes);

ContentType ct = new ContentType();

//附件文件类型

ct.MediaType = MediaTypeNames.Text.Html;

//附件名称,可以是其它后缀名

ct.Name = "附件名称" + DateTime.Now.ToString() + ".html";

mmsg.Attachments.Add(new Attachment(ms, ct));

//SMTP简单邮件协议

System.Net.Mail.SmtpClient sc

= new System.Net.Mail.SmtpClient();

sc.Host = "127.0.0.1";//主机地址

sc.Port = 25;//端口

//发送邮箱账号和密码

sc.Credentials =

new System.Net.NetworkCredential("account", "password");

//发送邮箱

mmsg.From = new MailAddress("");

sc.Send(mmsg);

//释放流资源

ms.Close();

ms.Dispose();

另附上一个.net使用smtp发送带附件邮件的实例

代码如下:

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=" Address

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

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

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

<--带附件版本->

var fromAddress = "";

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, "");

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);

更多信息请查看IT技术专栏

更多信息请查看网络编程
点此处就本文及相关问题在本站进行非正式的简要咨询(便捷快速)】     【点此处查询各地各类考试咨询QQ号码及交流群
上一篇:asp.net+ajaxfileupload.js 实现文件异步上传代码分享
下一篇:asp.net使用AJAX实现无刷新分页
易贤网手机网站地址:smtp发送带附件的邮件代码分享
由于各方面情况的不断调整与变化,易贤网提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!