gpt4 book ai didi

c# - 使用 C# 邮件消息发送 MHT 文件

转载 作者:行者123 更新时间:2023-11-30 16:05:54 25 4
gpt4 key购买 nike

有没有人有任何示例代码发送MHT在 C# 中使用 SmtpClient 和 MailMessage?

我找到了关于使用 Alternate Views 的引人入胜的引用资料但我不知道如何使用我的 SSRS 生成的 MHT 来完成这项工作。

如果有人愿意分享任何工作代码,我将不胜感激。

最佳答案

所以看起来 .NET MailMessage 不支持开箱即用。我发现了几种可以取得不同程度成功的方法。

MHTML -> HTML 解码器

David Benko 写道 https://github.com/DavidBenko/MHTML-to-HTML-Decoding-in-C-Sharp/blob/master/MHTMLParser.cs虽然它有效,但我无法在查看生成的电子邮件时显示图像。 HTML 看起来不错,只是在 Outlook 2010 中不起作用。

将 MimeKit MimeMessage 转换为 .NET 邮件消息

正如 Jeffrey 指出的那样,这是一个开始 https://github.com/jstedfast/MimeKit/issues/140 .结果消息中没有显示图像,我又遇到了问题。

使用 MimeKit 和 MailKit

我最终使用了 https://github.com/jstedfast/MimeKit做这项工作。这可以通过以下方式实现:

   MimeMessage messageMimeKit = MimeMessage.Load(Request.MapPath("~/Blah/378921.mht"));

messageMimeKit.From.Add(new MailboxAddress("Dev", "developer@gmail.com"));
messageMimeKit.To.Add(new MailboxAddress("Homer", "homer@gmail.com"));
messageMimeKit.Subject = "Another subject line";
using (var client = new MailKit.Net.Smtp.SmtpClient())
{
client.Connect("smtp.gmail.com", 465, true);
client.Authenticate("homer@gmail.com", "*****");
client.Send(messageMimeKit);
client.Disconnect(true);
}

关于c# - 使用 C# 邮件消息发送 MHT 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32962476/

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