SendMailwithasp.netandEmbedImageAsSystem.Net.Mail.MailMessage=NewSystem.Net.Mail.MailMessage(txtFrom.Text,txtTo.文本)将A调暗为System.Net.Mail.Attachment=NewSystem.Net.Mail.Attachment(txtImagePath.Text))EM.Attachments.Add(A)EM.Subject=txtSubject.TextEM.Body=""+txtBody.Text+""EM.IsBodyHtml=TrueDimSCAsSystem.Net.Mail.SmtpClient=NewSystem.Net。Mail.SmtpClient(txtSMTPServer.Text)SC.Send(EM)如果您使用的是.NET2或更高版本,则可以按如下方式使用AlternateView和LinkedResource类:stringhtml=@"";AlternateViewaltView=AlternateView.CreateAlternateViewFromString(html,null,MediaTypeNames.Text.Html);LinkedResourceyourPictureRes=newLinkedResource("yourPicture.jpg",MediaTypeNames.Image.Jpeg);yourPictureRes.ContentId="你的图片ID";altView.LinkedResources.Add(yourPictureRes);邮寄讯息邮件=新邮件消息();邮件.AlternateViews.Add(altView);希望你能推断出VB等价物在搜索并尝试了一定是四五个“答案”之后,我觉得我必须分享我最终发现的实际有效的东西,因为很多人似乎不知道如何做到这一点,或者一些对很多其他人的问题给出了详尽的答案,加上一些,只给出了一个片段的答案,然后不得不解释。由于我没有博客,但我想帮助别人,这里有一些完整的代码可以完成这一切。非常感谢AlexPeck,因为这是他的回答。inMy.aspxasp.net文件testemailinMy.aspx.cs代码在c#文件后面protectedvoidsendHTMLEmail(objects,EventArgse){/*改编自http://stackoverflow.com/questions/1113345/sending-mail-与嵌入式图像一起使用-asp-net和http://stackoverflow.com/questions/886728/generating-html-email-body-in-c-sharp*/stringmyTestReceivingEmail="yourEmail@address.com";//您用于测试的电子邮件地址或您要向其发送文本的人。stringsubject="这是主题行";stringfirstName="John";串手机号="07711111111";//创建消息。varfrom=newMailAddress("emailFrom@address.co.uk","displayedfromName");varto=newMailAddress(myTestReceivingEmail,"发送邮件的人的显示姓名");varmail=newMailMessage(从,到);mail.Subject=主题;//对HTML文件(您用作模板)执行替换。varreader=newStreamReader(@"c:TempHTMLfile.htm");字符串主体=reader.ReadToEnd().Replace("%TEMPLATE_TOKEN1%",firstName).Replace("%TEMPLATE_TOKEN2%",mobileNo);//根据需要等等...//用导入的阅读器替换了这一行,这样就可以使用模板....//stringhtml=body;//"文字在这里-图片在这里";//创建替代视图并将其添加到电子邮件中。可以实现一个if语句来决定添加哪个视图//AlternateViewaltView=AlternateView.CreateAlternateViewFromString(body,null,MediaTypeNames.Text.Html);//徽标1//字符串imageSource=(Server.MapPath("")+"\logo_sml.jpg");LinkedResourcePictureRes=newLinkedResource(imageSource,MediaTypeNames.Image.Jpeg);PictureRes.ContentId="logo_sml.jpg";altView.LinkedResources.Add(PictureRes);//徽标2//字符串imageSource2=(Server.MapPath("")+"\booking_btn.jpg");LinkedResourcePictureRes2=newLinkedResource(imageSource2,MediaTypeNames.Image.Jpeg);PictureRes2.ContentId="booking_btn.jpg";altView.LinkedResources.Add(PictureRes2);邮件。AlternateViews.Add(altView);//发送电子邮件(使用Web.Config文件存储电子邮件网络链接等)SmtpClientmySmtpClient=newSmtpClient();mySmtpClient.发送(邮件);}HTMLfile.htm你好%TEMPLATE_TOKEN1%。你的手机号码是%TEMPLATE_TOKEN2%在你的Web.Config文件中,在一个块中你需要以下内容以允许在c:驱动器的TempMail文件夹中进行测试在aspx.cs的顶部代码隐藏文件,你唯一需要的是使用系统包括(如果我错过了一个你只需右键单击未知类并选择“解决”选项)使用System.Net.Mail;使用系统文本;使用System.Reflection;使用系统。Net.Mime;//需要使用System.IO对邮件消息和文本进行编码;希望这对某人有所帮助,非常感谢上面的海报提供使其工作所需的答案(以及我代码中的其他链接)它有效,但我愿意改进。干杯。以上就是C#学习教程的全部内容:使用asp.net发送邮件和嵌入图片分享。如果对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场,如涉及侵权,请点击右边联系管理员删除。如需转载请注明出处:
