通过电子邮件将图像作为嵌入图像发送到正文中时出现问题.图像文件显示为附件,但是内嵌图像部分显示为红色x.
这是我到目前为止所拥有的
LinkedResource inline = new LinkedResource(filePath);
inline.ContentId = Guid.NewGuid().ToString();
MailMessage mail = new MailMessage();
Attachment att = new Attachment(filePath);
att.ContentDisposition.Inline = true;
mail.From = from_email;
mail.To.Add(data.email);
mail.Subject = "Client: " + data.client_id + " Has Sent You A Screenshot";
mail.Body = String.Format(
"<h3>Client: " + data.client_id + " Has Sent You A Screenshot</h3>" +
@"<img src=""cid:{0}"" />", inline.ContentId);
mail.IsBodyHtml = true;
mail.Attachments.Add(att);
Run Code Online (Sandbox Code Playgroud) 我已经找到了关于如何在asp.net中使用Razor Engine用于电子邮件模板的链接,并且它运行良好.但我试图在电子邮件模板中添加带有图像的徽标.
像这样的东西:
EmailTemplate.cshtml (顺便说一下这是一个强类型的视图)
<html>
<body>
<img src="logo.jpg" />
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
当我尝试在电子邮件中提交它时,似乎没有读取图像路径,它只在内容中呈现X.
我正在考虑将图像路径作为模型的一部分传递,但这似乎很奇怪.有没有办法实现这个目标?
任何帮助将非常感激.谢谢