gpt4 book ai didi

c# - .IsBodyHtml=true 导致发送一个空的电子邮件正文,但是 .IsBodyHtml=false 发送正文内容

转载 作者:太空宇宙 更新时间:2023-11-03 14:04:00 26 4
gpt4 key购买 nike

我有一个基于用户输入发送电子邮件的 WCF 服务。我注意到,最近,一位特定用户的电子邮件在发送时没有任何正文。如果 .IsBodyHtml 设置为 true,则不会传输正文;但是,如果 .IsBodyHtml 设置为 false,则正文具有适当的文本。
然而,它似乎并不一致,因为它似乎只有在将所述用户的电子邮件地址设置为“发件人”地址时才会发生。

技术细节:
我们有一个 MS Exchange 邮件服务器。我正在编写一个 MailMessage 对象,将其传递给内置的 SMTP 类以发送消息。

为简洁/清晰起见,代码已进行了一些简化。尽管如此,原始代码还是相当标准/直接的。 email 指的是一个 LINQ-to-SQL 类对象

MailMessage message = new MailMessage();
message.From = new MailAddress(email.fromAddress);
message.To.Add(email.toRecipient);
message.Subject = email.emailSubject;

//set email body
message.IsBodyHtml = true;
message.Body = email.emailBody;

Attachment attachmentFile = null;
if (email.hasAttachment == true)
{
//retrieve attachments for emailID
var attachments = from attach in db.EmailAttachments
where attach.emailID == emailID
select attach;

foreach (var attachment in attachments)
{//attach each attachment
string filePath = Path.Combine(UPLOAD_DIRECTORY, emailID.ToString(), attachment.fileName);
attachmentFile = new Attachment(filePath);
message.Attachments.Add(attachmentFile); //set attachment from input path
}
}

SmtpClient client = new SmtpClient(SMTP_SERVER, SMTP_PORT); //set SMTP server name/URL and port
client.Send(message); //try to send the SMTP email

最佳答案

既然是一个用户的问题,那么很有可能是这个用户的设置问题。

以该用户身份登录并打开 outlook

选择:文件 -> 选项 -> 邮件

向下滚动到“消息格式”部分

可能“Convert to PlainText Format is selected”将其更改为“Convert to HTML Format”

关于c# - .IsBodyHtml=true 导致发送一个空的电子邮件正文,但是 .IsBodyHtml=false 发送正文内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9950699/

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