将徽标附加到asp.net生成的电子邮件时出错

时间:2012-01-31 15:02:10

标签: c# asp.net email signature

我有一个发送电子邮件的asp.net应用程序。在电子邮件中,我想在签名区域(主体下方)附上公司徽标。查看此网站Embed image in Email - ASP.NET , C#
我发错了 AlternateView av1 = AlternateView.CreateAlternateViewFromString("<html><body>" + msgBody, null, MediaTypeNames.Text.Html + "<br><img src=cid:companylogo/><br></body></html>");

错误是:指定的媒体类型无效。

我的代码是:

msgBody += "Contact Email: " + contactemailaddr + "<br/><br/>";
LinkedResource logo = new LinkedResource("C:\\Data\\Images\\companylogo.jpg");
logo.ContentId = "corpLogo";

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

任何可能导致此问题的想法?

1 个答案:

答案 0 :(得分:3)

将AlternateView行更改为:

AlternateView av1 = AlternateView.CreateAlternateViewFromString("<html><body>" + msgBody + "<br><img src=cid:companylogo/><br></body></html>", null, MediaTypeNames.Text.Html);

问题是您要将徽标附加到媒体类型参数。该参数仅适用于消息的mime类型。徽标应附加到实际内容参数。