图像未显示在asp.net电子邮件签名中

时间:2012-01-31 15:41:01

标签: c# asp.net email signature

我正在创建一个发送电子邮件的asp.net应用程序。我需要在签名中附上公司徽标。我的图片显示为

enter image description here

我的代码是:

LinkedResource logo = new LinkedResource(
                          "c:\\Data\\Misc\\Images\\CorpLogo.jpg", "image/jpeg");
logo.ContentId = "corpLogo";
logo.TransferEncoding = TransferEncoding.Base64;

AlternateView av1 = AlternateView.CreateAlternateViewFromString("<html><body>" + msgBody + "<br><img src=cid:corpLogo/><br></body></html>", null, MediaTypeNames.Text.Html);
av1.LinkedResources.Add(logo);
message.AlternateViews.Add(av1);

message.Body = msgBody;  

当我将鼠标悬停在“徽标”上时,我可以看到“contentlink”值为空 为什么图像不显示?

2 个答案:

答案 0 :(得分:2)

更新

如果您还没有对它进行排序,请在链接的资源行中放置一个中断并检查图像的路径,您可能需要使用server.mappath


点击这里,我认为这就是你要做的事情。

http://log.itto.be/?p=486

这是一个完整的例子。尝试将代码简化到最低限度,以使其正常工作。

http://www.systemnetmail.com/faq/2.6.aspx

答案 1 :(得分:0)

将图像附加到电子邮件中,然后您可以在每个客户端上显示它,而不仅仅是在您的PC上显示C:\的东西。