gpt4 book ai didi

.net - MailMessage.IsBodyHtml是做什么的?

转载 作者:行者123 更新时间:2023-12-03 13:26:48 24 4
gpt4 key购买 nike

我正在测试通过C#发送一些电子邮件,但是我不知道将IsBodyHtml设置为true有什么效果。无论值(value)如何,我在“正文”中发送的任何内容都会以“文本/纯文本”的内容类型显示,并且HTML会显示标签以及所有这些内容都在我的电子邮件客户端(gmail)中。那个旗实际上应该做什么?

注意:通过创建内容类型为“text / html”的AlternateView,我可以发送HTML电子邮件,我只是想了解设置正文应该如何工作。

最佳答案

这是我每天使用的SMTP助手的摘要。

public bool SendMail(string strTo, string strFrom, string strCc, string strBcc, string strBody, string strSubject)
{

bool isComplete = true;

SmtpClient smtpClient = new SmtpClient();
MailMessage message = new MailMessage();

try
{
//Default port will be 25
smtpClient.Port = 25;

message.From = new MailAddress(smtpEmailSource);
message.To.Add(strTo);
message.Subject = strSubject;

if (strCc != "") { message.Bcc.Add(new MailAddress(strCc)); }
if (strBcc != "") { message.Bcc.Add(new MailAddress(strBcc)); }

message.IsBodyHtml = true;

string html = strBody; //I usually use .HTML files with tags (e.g. {firstName}) I replace with content. This allows me to edit the emails in VS by opening a .HTML file and it's easy to do string replacements.

AlternateView htmlView = AlternateView.CreateAlternateViewFromString(html, new ContentType("text/html"));

message.AlternateViews.Add(htmlView);


// Send SMTP mail
smtpClient.Send(message);
}
catch
{
isComplete = false;
}

return isComplete;
}

[更新]

我最初离开的要点...
  • IsBodyHtml指出您的消息是HTML格式的。如果您仅发送HTML的单个 View ,那么这就是您所需要的。
  • AlternateView用于存储我的HTML,这对于发送HTML消息不是必需的,但是如果要发送包含HTML和纯文本的消息,则它是必需的,以防接收者无法呈现HTML。

  • 我在上面取出了plainView,所以这并不明显,对不起...

    此处的关键是,如果要发送HTML格式的消息,则需要使用IsBodyHtml = true(默认为false)将内容呈现为HTML。

    关于.net - MailMessage.IsBodyHtml是做什么的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2555813/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com