首页 电脑 电脑学堂 查看内容

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

2014-11-28 17:52 792 0

摘要: 该方式直接保存为HTML文件,也可以是文本文件,其它格式效果不是很好复制代码代码如下:        MailMessage mm...
关键词: nbsp INLINE ContentType new fromAddress FileUploadLetter Attachment Email string MailMessage

该方式直接保存为HTML文件,也可以是文本文件,其它格式效果不是很好复制代码代码如下:        MailMessage mmsg = new MailMessage();    mmsg.Subject = "邮件标题";    mmsg.Body = "邮件内容";    mmsg.To.Add("[email protected]");//接收邮箱    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("[email protected]");    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="**********@gmail.com"/>//Email Address <add key="EmailPassword" value="*********"/> //Emial PWD <add key="SmtpServer" value="smtp.gmail.com"/> <add key="SmtpPort" value="587"/> <--带附件版本-> var fromAddress = "[email protected]"; 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 protected]"); email.Subject = "INLINE attachment TEST"; email.IsBodyHtml = true; string attachmentPath = "C:\\3.webp"; 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); 
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论

返回顶部