2012-05-14 13 views
7

Sto utilizzando EWS (Exchange Web Services) con Exchange 2010 per generare e inviare e-mail internamente all'interno della nostra organizzazione. Al momento disponiamo di un'unica casella postale/utente per la quale tutte le nostre applicazioni inviano tramite il numero app.Utilizzo del nome visualizzato personalizzato durante l'invio di e-mail tramite EWS

Generazione di messaggi di posta elettronica non è un problema, ma quando viene inviato un messaggio di prova, viene ricevuto nella cassetta postale del destinatario con il nome dell'account predefinito in cambio, indipendentemente da quale nome visualizzazione si trova in codice.

codice di esempio:

EmailMessage message = new EmailMessage(ExchangeManager.CreateConnection()); 

// set from address as generic application account 
message.From = new EmailAddress("[email protected]"); 

// set custom display name for sender email 
message.From.Name = "Test Display Name"; 

// set send recipient as myself for testing 
message.ToRecipients.Add(new EmailAddress("[email protected]")); 

ExchangeManager.SendExchangeMessage(message); 

Il messaggio viene ricevuto, tuttavia viene visualizzato come nome predefinito dell'account app, piuttosto che "Test Display Name", come usato in precedenza nel codice. Vedi screenshot di arrivo di Outlook di seguito:

Inbox View

Questo tipo di approccio ha funzionato bene quando si utilizza Exchange 2003 servizi STMP - siamo riusciti a formattare l'indirizzo, se necessario, come ad esempio "Intranet generata Mail", o "qualche altra applicazione ", ecc. Ora con Exchange 2010 ed EWS non sembra permetterci questa opzione di utilizzare un nome di visualizzazione personalizzato.

Ho anche verificato tramite debug che il nome visualizzato viene impostato correttamente prima che il messaggio venga inviato.

Qualcuno ha utilizzato correttamente un nome di visualizzazione personalizzato con EWS/Exchange 2010?

risposta

-2

Io uso EWS, ma non ho mai dovuto impostare manualmente il nome visualizzato, perché l'ho già configurato in Exchange. In altre parole, cambia il campo Visualizza del tuo account "app" in Exchange e non dovrai impostarlo manualmente nel tuo programma.

+0

Spiacente, questo non aiuta: il punto è che utilizziamo questo account per l'invio di posta da molte applicazioni e vogliamo utilizzare un nome visualizzato personalizzato per ciascuna applicazione. Impostarlo su un nome di visualizzazione generico in cambio non soddisferà le nostre esigenze, anche se forse come ultima risorsa. Non è ideale, tuttavia, poiché i messaggi di tutte le applicazioni saranno ordinati allo stesso modo in Outlook, ecc. –

+0

Dato che non ci sono altre risposte, contrassegnerò questo come risposta. Utilizzeremo un indirizzo email comune in tutte le applicazioni e applicheremo un prefisso specifico dell'applicazione per ogni oggetto dell'email come una soluzione ... –

+0

Sono d'accordo sul fatto che non sembra esserci alcun modo per realizzare ciò che vuoi tramite EWS. Se è possibile inviare le e-mail attraverso un server SMTP (che sono gli hub di Exchange 2010, ma potrebbe avere un firewall chiuso), è possibile utilizzare facilmente un'intestazione "Da" personalizzata per ottenere ciò che si desidera. –

-1

Normalmente il metodo

EmailAddress()

ha un sovraccarico in cui è possibile specificare il nome visualizzato:

message.From = new EmailAddress ("app @ company.com "," Display personalizzato Nome ");

Provare il codice sopra & vedere.

+0

Non sei sicuro del motivo per cui quanto sopra è stato votato? – Anand

Problemi correlati