3.876 messaggi dal 28 gennaio 2003
Ciao,
da programma invio una mail. Adesso ho il problema di visualizzare una immagine.

Se nel body metto:
<img src="data:image/png;base64, ....

lo vedo con thunderbird ma non con outlook

se metto:
<img src="cid:image1" />

lo vedo in outlook ma non in thunderbird

C'è il modo di salvare capra e cavoli? (come si diceva un tempo?)

ciao

Pietro
125 messaggi dal 05 novembre 2012
Ciao,

ho provato a simulare il tuo caso ma non riscontro problemi, visualizzo entrambe le soluzioni sia su outlook (office 365) che su thunderbird (60.5).

Per gestire un immagine, la soluzione più semplice è pubblicarla su un server web e utilizzare la url pubblica

es.
<img src="https://www.miosito.it/email_content/mia_immagine.png" />


Se non hai la possibilità di pubblicarla, allora vanno bene le due soluzioni che stai utilizzando, ma

<img src="data:image/png;base64, ....

Utilizzala solo per immagini di piccole dimensioni

<img src="cid:image1" />

Attenzione a specificare i media type (es. "image/png")

var message = new MailMessage();

// impostazione from, to, subject ....

var body = @"<img src=""cid: image1"" />";

var htmlView = AlternateView.CreateAlternateViewFromString(body, Encoding.UTF8, MediaTypeNames.Text.Html);

var resource = new LinkedResource(@"C:\MioPercorso\image1.png", "image/png");

resource.ContentId = "image1";

htmlView.LinkedResources.Add(resource);

message.AlternateViews.Add(htmlView);


Ciao
Modificato da scioCoder il 07 febbraio 2019 13:49 -

Alessio
3.876 messaggi dal 28 gennaio 2003
Ti ringrazio

Ciao.

Pietro

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.