Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 如何将数据库中的图像插入到邮件中_.net_Vb.net_Sendmail - Fatal编程技术网

.net 如何将数据库中的图像插入到邮件中

.net 如何将数据库中的图像插入到邮件中,.net,vb.net,sendmail,.net,Vb.net,Sendmail,我在sql server中存储了一个映像。我希望检索图像并将其放置在MailMessage对象中,不是作为附件文件,而是作为html正文的一部分 我发现许多使用本地图像文件的示例,但没有发现任何使用数据库图像的示例 有人知道我如何在vb.net中做到这一点吗 提前谢谢你 Javier您必须将数据库中的图像添加为。 从数据库中以字节形式检索图像时,可以使用流添加LinkedResource;通过从字节创建memorystream 用C#编写代码,但我认为您应该能够将其转换为VB.Net var v

我在sql server中存储了一个映像。我希望检索图像并将其放置在MailMessage对象中,不是作为附件文件,而是作为html正文的一部分

我发现许多使用本地图像文件的示例,但没有发现任何使用数据库图像的示例

有人知道我如何在vb.net中做到这一点吗

提前谢谢你


Javier

您必须将数据库中的图像添加为。 从数据库中以字节形式检索图像时,可以使用流添加LinkedResource;通过从字节创建memorystream

用C#编写代码,但我认为您应该能够将其转换为VB.Net

var view = System.Net.Mail.AlternateView.CreateAlternateViewFromString(text, null, "text/html");
var resource = new System.Net.Mail.LinkedResource(new MemoryStream(bytes), mime);
resource.ContentId = image.Name;
view.LinkedResources.Add(resource);
_message.AlternateViews.Add(view);

您必须在htmlbody中包含带有imagetag的图像:

通过添加LinkedResource,您可以将图像包含到消息中。但是您需要在html正文和图像之间创建链接。这是html正文中的“cid:myuniqueid”。cid的值必须等于LinkedResource对象的ContentID属性的值

以下是一个例子:

“**创建邮件对象
将消息变暗为新邮件消息()
“**创建HTML视图
Dim htmlView As AlternateView=AlternateView.CreateAlternateView-FromString(htmlbody,System.Text.Encoding.Default,MediaTypeNames.Text.Html)
'**为图像创建资源
Dim lr作为新的LinkedResource(objStream)
'**设置图像资源的contentid
lr.ContentId=“myuniqueid”
“**将图像资源和htmlview链接在一起
htmlView.LinkedResources.Add(lr)
'**将视图添加到MailMessage对象
message.AlternateViews.Add(htmlView)

请参阅。虽然它不会从数据库中提取图像,但它会向您展示如何嵌入非本地文件路径的图像。您可以将此代码与代码结合起来,将图像从数据库检索到内存流中代码中的“objStream”是什么?您可以插入define语句吗?您知道为什么在gmail帐户中此图像不显示吗?在outlook中,配置了其他internet邮件帐户后,图像显示正确吗?。。。我尝试将图像作为附件插入,在这种情况下,outlook也会正确显示图像,但在gmail中显示为附件,不会显示在html正文中。。。