7

Ich verwende EWS (Exchange Web Services) mit Exchange 2010 zu generieren und senden Sie E-Mails intern innerhalb unserer Organisation. Derzeit haben wir ein einziges Postfach/einen einzigen Benutzer, für den alle unsere Anwendungen app senden.Verwenden benutzerdefinierter Anzeigename beim Senden von E-Mails über EWS

E-Mails generieren ist kein Problem, aber wenn eine Testnachricht gesendet wird, wird sie in dem Mailbox des Empfängers mit den Standardkontonamen im Austausch erhalten, unabhängig davon, was Anzeigenamen in Code festgelegt ist.

Beispielcode:

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); 

Die Nachricht empfangen wird, jedoch zeigt es als Standardname app Konto, sondern als „Test-Anzeigename“, wie oben im Code verwendet. Screenshot von Outlook-Posteingang unter:

Inbox View

Diese Art von Ansatz gut funktioniert, wenn Exchange 2003 STMP Dienste - wir die Adresse formatieren könnte je nach Bedarf, wie zum Beispiel „Intranet generiert Mail“ oder „eine andere Anwendung ", usw. Jetzt scheint es uns bei Exchange 2010 und EWS nicht mehr möglich zu sein, einen benutzerdefinierten Anzeigenamen zu verwenden.

Ich habe auch durch Debuggen überprüft, dass der Anzeigename erfolgreich eingestellt wird, bevor die Nachricht gesendet wird.

Hat jemand erfolgreich einen benutzerdefinierten Anzeigenamen mit EWS/Exchange 2010 verwendet?

Antwort

-2

Ich benutze EWS, aber ich musste den Anzeigenamen nie manuell einstellen, weil ich es vorher in Exchange konfigurierte. Mit anderen Worten: Ändern Sie das Feld "Anzeige" Ihres "App" -Kontos in Exchange, und Sie müssen es nicht manuell in Ihrem Programm festlegen.

+0

Entschuldigung, das hilft nicht - der Punkt ist, wir verwenden dieses Konto zum Senden von E-Mails aus vielen Anwendungen und möchten einen benutzerdefinierten Anzeigenamen aus jeder Anwendung verwenden. Wenn wir es im Austausch selbst auf einen generischen Anzeigenamen setzen, wird dies unseren Bedürfnissen nicht gerecht - wenn auch vielleicht als letzter Ausweg. Es ist jedoch nicht ideal, da Nachrichten aus allen Anwendungen in Outlook usw. gleich sortiert werden. –

+0

Da keine anderen Antworten, werde ich dies als Antwort markieren. Wir verwenden eine gemeinsame E-Mail-Adresse für alle Anwendungen und wenden für jeden E-Mail-Betreff ein anwendungsspezifisches Präfix an. –

+0

Ich stimme zu, dass es scheinbar keine Möglichkeit gibt, das zu erreichen, was Sie wollen EWS. Wenn Sie die E-Mails über einen SMTP-Server senden können (die Exchange 2010-Hubs sind aber möglicherweise mit einer engen Firewall ausgestattet), können Sie einfach eine benutzerdefinierte "Von" -Header verwenden, um zu erhalten, was Sie wollen. –

-1

Normalerweise wird das Verfahren

Emailaddress()

hat eine Überlastung wo in Sie den Anzeigenamen angeben:

message.From = new Emailadresse ("app @ company.com "," Benutzerdefinierte Anzeige Name ");

Versuchen Sie den obigen Code & zu sehen.

+0

Nicht sicher, warum das oben genannte gewählt wird? – Anand