我可以使用 c# 通过 smtp 发送电子邮件,从而使用 LinkedResource 插入图像。 现在的问题是收到的电子邮件包含 ATT0000X.bin 文件作为附件。如何确保这些 bin 文件不会添加到电子邮件中?
提前致谢!
最佳答案
我刚刚在尝试将图像嵌入到电子邮件中时遇到了这个问题。我的代码有两件事错误,也许其中之一发生在你身上:
首先,我嵌入了一个图像,但没有定义任何标签来让它显示在我的正文中。通过将标记 cid:yourContentId 添加到我的 HTML 中,然后将该标记指定为图像的 ContentId,已修复此问题。这解决了 Outlook 中的问题,但它仍然显示一个剪辑,就像电子邮件有附件一样,但没有地方可以实际看到附件。这看起来 super 垃圾。在 Outlook Web 中,您仍然可以看到 ATT00001.bin 附件。
我的第二个错误是在创建 LinkedResource 时没有定义嵌入图像的 ContentType。这修复了桌面客户端中显示的剪辑,并且在 Web 客户端中不再可以看到附件。最终的代码是这样的
LinkedResource embeddedImage = new LinkedResource(imageStream, new System.Net.Mime.ContentType("image/jpeg")); embeddedImage.ContentId = "ContentId"; altview.LinkedResources.Add(embeddedImage); mailMessage.AlternateViews.Add(altview);
关于c# - 如何使用 C# 发送没有 ATT00001.bin 文件的嵌入图像电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60228957/