Изображение не отображается в подписи электронной почты asp.net - PullRequest
0 голосов
/ 31 января 2012

Я создаю приложение asp.net, которое отправляет электронное письмо. Мне нужно прикрепить корпоративный логотип в подписи. Мое изображение отображается как

enter image description here.

Мой код:

LinkedResource logo = new LinkedResource(
                          "c:\\Data\\Misc\\Images\\CorpLogo.jpg", "image/jpeg");
logo.ContentId = "corpLogo";
logo.TransferEncoding = TransferEncoding.Base64;

AlternateView av1 = AlternateView.CreateAlternateViewFromString("<html><body>" + msgBody + "<br><img src=cid:corpLogo/><br></body></html>", null, MediaTypeNames.Text.Html);
av1.LinkedResources.Add(logo);
message.AlternateViews.Add(av1);

message.Body = msgBody;  

При наведении курсора на «логотип» я вижу, что значение «contentlink» равно нулю.
Почему изображение не будет отображаться?

Ответы [ 2 ]

2 голосов
/ 31 января 2012

Обновление

Если вы все еще не отсортировали его, поставьте разрыв на строке связанного ресурса и проверьте путь к изображению, возможно, вам потребуется использовать server.mappath


Проверьте здесь, я думаю, это то, что вы пытаетесь сделать.

http://log.itto.be/?p=486

Вот полный пример. Попробуйте упростить ваш код до минимума, чтобы он заработал.

http://www.systemnetmail.com/faq/2.6.aspx

0 голосов
/ 31 января 2012

Прикрепите изображение к электронному письму, и тогда вы сможете показать его на каждом клиенте, а не только на вашем ПК, где C: \ что-то имеет.

...