企業郵件常需圖文並茂。專業做法是將圖片作為內聯附件嵌入郵件,而非引用外部連結。.NET 中僅需三步驟即可正確實現。

ContentId 為自訂名稱(如 "MyPic")ContentDisposition.Inline = true 標記為內聯附件cid:自訂名稱 引用(如 <img src="cid:MyPic" />)MailMessage mail = new MailMessage();
mail.From = new MailAddress("from@test.com");
mail.To.Add("to@test.com");
mail.Subject = "內嵌圖片測試";
mail.IsBodyHtml = true;
// 建立內聯附件
Attachment inline = new Attachment(@"C:\test.png");
inline.ContentId = "MyPic";
inline.ContentDisposition.Inline = true;
mail.Attachments.Add(inline);
// HTML 正文引用
mail.Body = @"<img src=""cid:MyPic"" /><br/>
<a href=""cid:MyPic"" target=""_blank"">點擊在新視窗開啟圖片</a>";
SmtpClient client = new SmtpClient("smtp.test.com");
client.Credentials = new NetworkCredential("user", "pwd");
client.Send(mail);
最終郵件原始碼片段:
<img src="cid:MyPic" /><a href="cid:MyPic" target="_blank">點擊在新視窗開啟圖片</a>
Gmail 收信:
126 信箱:
掌握 ContentId + Inline + cid: 三要素,即可在 .NET 輕鬆發送專業級內嵌圖片郵件。