相关疑难解决方法(0)

在电子邮件中发送内联图片

通过电子邮件将图像作为嵌入图像发送到正文中时出现问题.图像文件显示为附件,但是内嵌图像部分显示为红色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)

c# email smtp inline image

95
推荐指数
7
解决办法
17万
查看次数

HTML电子邮件中的嵌入图像无法在手机上显示

我有一个应用程序发送带有嵌入图像的HTML格式的电子邮件.电子邮件在许多不同的桌面/ Web客户端上看起来很完美 当在支持HTML电子邮件的移动电话上查看电子邮件时(在iPhone,WinMo 6.1上测试),图像显示为红色'X'.正确显示所有其他HTML.需要说明的是,问题仅发生在移动客户端上,而不是桌面客户端上.

嵌入图像的代码工作得很好,我不相信它有任何问题,但我在下面包含了一些快速示例代码,以防万一:

MailMessage mail = new MailMessage();
            mail.To.Add("123@myemail.com");
            mail.From = new MailAddress("456@ myemail.com");
            mail.Subject = "Image sample - fails in mobile clients";
            string Body = "Sample email text<img src=\"cid:imageId\" />";

            AlternateView htmlView = AlternateView.CreateAlternateViewFromString(Body, null, "text/html");
            LinkedResource lr = new LinkedResource("myImage.jpg");
            lr.ContentId = "imageId";
            htmlView.LinkedResources.Add(lr);

            mail.AlternateViews.Add(htmlView);
            SmtpClient smtpClient = new SmtpClient();
            smtpClient.Send(mail);
Run Code Online (Sandbox Code Playgroud)

有谁知道为什么嵌入式图像不会在移动客户端上显示?更好的是,我怎样才能正确显示图像?

编辑:如果Outlook 2007(及更高版本)发送带有图像的电子邮件,则图像将在移动客户端和桌面客户端中正确显示.如果HTML格式的电子邮件与嵌入的图像一起发送,则图像不会在移动客户端中正确显示,而是在桌面客户端中正确显示.

Outlook如何能够自信地显示带有图像的电子邮件,但如果通过Web应用程序(使用嵌入图像)发送,则移动客户端会阻止图像.两者有什么区别?

html asp.net email embedded-resource

5
推荐指数
1
解决办法
7585
查看次数

使用 C# 将图像添加到电子邮件正文

我想使用 C# 将图片框中的图像添加到我的电子邮件正文中。这就是我所做的。任何人都可以帮助我吗?

var fromAddress = new MailAddress("aaa@gmail.com", "aaa");
        var toAddress = new MailAddress("bbb@gmail.com", "bbb");
        const string fromPassword = "mypassword";
        const string subject = "Tes Program";
        const string body = "Bersama ini kami kirimkan QR Code sebagai sarana validasi pengiriman rekening koran Anda. Harap simpan dan tunjukkan QR Code ini saat kurir kami datang untuk mengantar rekening koran. Atas perhatiannya kami sampaikan terima kasih. Salam";

        var smtp = new SmtpClient
        {
            Host = "smtp.gmail.com",
            Port = 587,
            EnableSsl = true, …
Run Code Online (Sandbox Code Playgroud)

c# email smtp image

3
推荐指数
2
解决办法
9907
查看次数

标签 统计

email ×3

c# ×2

image ×2

smtp ×2

asp.net ×1

embedded-resource ×1

html ×1

inline ×1