的Html不显示在Outlook中的邮件了
我有以下的代码,该代码发送电子邮件到不同的收件人在一个循环的Html不显示在Outlook中的邮件了
public void SendMail2(string subject, string body, string emailAddress, string cc)
{
Microsoft.Office.Interop.Outlook.Application app = new Microsoft.Office.Interop.Outlook.Application();
Microsoft.Office.Interop.Outlook.MailItem mailItem = app.CreateItem(Microsoft.Office.Interop.Outlook.OlItemType.olMailItem);
mailItem.Subject = subject;
mailItem.To = emailAddress;
mailItem.CC = cc;
mailItem.Body = body;
mailItem.SentOnBehalfOfName = "name";
mailItem.Display(false);
mailItem.Send();
}
然而,HTML只是显示为文本与电子邮件的所有标签,而它是完美的我使用
// Create the Outlook application.
Outlook.Application oApp = new Outlook.Application();
// Get the NameSpace and Logon information.
Outlook.NameSpace oNS = oApp.GetNamespace("mapi");
// Log on by using a dialog box to choose the profile.
oNS.Logon(Missing.Value, Missing.Value, true, true);
的时候,但我不得不恢复到第一种方法,所以我可以改变的“发件人”地址
任何想法吗?
尝试使用mailItem.HTMLBody = Body;
代替mailItem.Body = body;
,然后添加mailItem.BodyFormat = olFormatHTML;
有了这个我得到,”名称'身体'不存在于当前上下文中“和”名称“olFormatHTML'不存在于当前的情况“ – 2015-12-28 19:01:32
mailItem.IsBodyHtml= true;
会做你想要什么,如果我理解您的问题
有了这个我得到了,“Microsoft.Office.Interop.Outlook.MailItem”不包含'IsBodyHtml'的定义,也没有接受'Microsoft.Office.Interop.Outlook.MailItem'类型的第一个参数的扩展方法'IsBodyHtml'可以找到(你是否缺少使用指令或程序集引用?)“ – 2015-12-28 19:02:41
我不经常使用C#,但我相信必须有一些方法来设置电子邮件的内容类型。将它设置为text/html,你很好去 – 2015-03-31 16:30:54
如下所述,唯一需要的改变是mailItem.HTMLBody = body; – PrOjEkTeD 2015-03-31 16:37:34