使用什么组件发送具有任何类型主体的邮件

本文关键字:类型 任何 主体 什么 组件 | 更新日期: 2023-09-27 18:02:48

我在c#中创建了一个邮件发送器,但是我在邮件正文方面遇到了麻烦。它只发送文本,没有图片、链接和其他元素。更不用说,我为此使用了RichTextBox

所以现在我的问题是:使用什么组件来发送带有图片,链接和其他内容的邮件?

I also enabled IsBodyHtml to true .

我想做的是复制图片,链接和文本(不同的颜色和大小)从Microsoft Word和粘贴到控件,当用户收到邮件,他得到完全相同的主体和布局,因为我发送它们

使用什么组件发送具有任何类型主体的邮件

您需要将其作为html发送。将word文档保存为html并使用它。对于文档中的图像,您可以通过它们的绝对url指向它们(可通过互联网公开获取)。

或者您可以使用LinkedResource类。

使用LinkedResource类,您的图像必须在源中指定cid。

var inlineLogo = new LinkedResource("path/myfile.png");
                                inlineLogo.ContentId = Guid.NewGuid().ToString(); 
var imageHtmlFragment = string.Format("<img alt='My Logo'  src='cid:{0}' style='width: 250px;height: 60px;'/>",inlineLogo.ContentId);
var newMail = new MailMessage();
var view = AlternateView.CreateAlternateViewFromString(imageHtmlFragment, null, "text/html");
                        view.LinkedResources.Add(inlineLogo);
                        newMail.AlternateViews.Add(view);
相关文章: