第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

來自 C# 中生成的電子郵件的鏈接資源圖像未顯示在 Android 電子郵件上

來自 C# 中生成的電子郵件的鏈接資源圖像未顯示在 Android 電子郵件上

C#
慕標(biāo)琳琳 2021-11-07 19:32:04
我一直在與帶有圖像的 HTML 電子郵件作斗爭(zhēng)。我讓他們?cè)谧烂?Thunderbird 和 Outlook 上工作,但 Android 電子郵件顯示損壞的圖像。我知道它可以工作,因?yàn)槭褂?Outlook 創(chuàng)建的電子郵件有效,并且與我正在創(chuàng)建的電子郵件結(jié)構(gòu)非常相似。顯然它不一樣(否則我的會(huì)起作用?。?,但我看不到我錯(cuò)過了什么。我沒有過多地減少代碼,因?yàn)槲蚁M腥藭?huì)看到 LinkedResource 或 AlternateResource 的問題,但它可能會(huì)更大。HTML 視圖中包含圖像標(biāo)記,可以在桌面上正常工作。它在 Android 上顯示替代文本,帶有損壞的圖像圖標(biāo)。任何幫助將不勝感激。        bool SendEmail()        {            string fullBody = GenerateHeader() + Body + GenerateFooter();            string textBody = RemoveHTML(Body);            AlternateView avHtml = AlternateView.CreateAlternateViewFromString(fullBody, Encoding.UTF8, MediaTypeNames.Text.Html);            avHtml.TransferEncoding = TransferEncoding.QuotedPrintable;            MailMessage message = new MailMessage();            message.IsBodyHtml = true;            message.Subject = BaseSubject + Subject;            message.Body = textBody;            message.AlternateViews.Add(avHtml);            message.AlternateViews.Add(avText);            message.Headers.Add("Message-Id",                                    String.Format("<{0}@{1}>",                                    Guid.NewGuid().ToString(),                                    "company.com.au"));            var assembly = Assembly.GetExecutingAssembly();            string resourceName = "app.UI.EmbeddedItems.logo.png";            using (Stream stream = assembly.GetManifestResourceStream(resourceName))            {                LinkedResource inline = new LinkedResource(stream, "image/png");                inline.ContentId = LogoId;                inline.ContentType.Name = "logo.png";                inline.ContentLink = new Uri("cid:" + inline.ContentId);                inline.TransferEncoding = TransferEncoding.Base64;                inline.ContentType.MediaType = "image/png";                avHtml.LinkedResources.Add(inline);
查看完整描述

1 回答

?
HUH函數(shù)

TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超4個(gè)贊

結(jié)果證明問題不在于電子郵件的構(gòu)造,而在于 HTML 本身。圖像標(biāo)簽如下所示:

<img id='Logo.png' alt='Logo' src='cid:LogoId' />

這在桌面郵件客戶端上運(yùn)行良好,但不會(huì)在 Android 郵件應(yīng)用程序或適用于 Android 的 Google 郵件應(yīng)用程序上顯示圖像。為了使其工作,需要用雙引號(hào)替換單引號(hào)。

這有效:

<img id="Logo.png" alt="Logo" src="cid:LogoId" />

更改 GenerateHeader 在 img 標(biāo)簽中使用雙引號(hào)而不是單引號(hào)解決了這個(gè)問題。對(duì)我來說沒有意義,但它有效。


查看完整回答
反對(duì) 回復(fù) 2021-11-07
  • 1 回答
  • 0 關(guān)注
  • 214 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)