Wystąpił problem z wysyłaniem obrazu pocztą e-mail jako obrazu osadzonego w treści. Plik obrazu jest wyświetlany jako załącznik, co jest w porządku, ale wbudowana część obrazu jest wyświetlana jako czerwony znak x.
Oto, co mam do tej pory
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);
inline.ContentId
, w którym powinien att.ContentId
. inline
wcale nie jest wymagane. Wolę Twoje pytanie od wszystkich odpowiedzi, ponieważ naprawdę nie musisz używać rozszerzenia AlternateView
.