Я использую EWS (веб-службы Exchange)
с Exchange 2010
для создания и отправки электронные письма внутри нашей организации. В настоящее время у нас есть один почтовый ящик/пользователь, для которого все наши приложения отправляются через app
.
Генерация электронных писем не представляет проблемы, однако при отправке тестового сообщения оно поступает в почтовый ящик получателя с именем учетной записи по умолчанию в exchange, независимо от того, какое отображаемое имяустановить в коде.
Пример кода:
EmailMessage message = new EmailMessage(ExchangeManager.CreateConnection());
// set from address as generic application account
message.From = new EmailAddress("app@company.com");
// 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("myaccount@company.com"));
ExchangeManager.SendExchangeMessage(message);
Сообщение получено, однако оно отображается как имя учетной записи приложения
по умолчанию, а не как «Проверочное отображаемое имя», как используется выше в коде. См. скриншот почтового ящика Outlook ниже:
Такой подход отлично работал при использовании служб STMP Exchange 2003 — мы могли отформатировать адрес по мере необходимости, например, «Почта, созданная в интрасети», или «Некоторое другое приложение» и т. д. Теперь с Exchange 2010 и EWS, похоже, не позволяют использовать этот параметр для использования пользовательского отображаемого имени.
С помощью отладки я также убедился, что отображаемое имя успешно устанавливается перед отправкой сообщения.
Кто-нибудь успешно использовал пользовательское отображаемое имя в EWS/Exchange 2010?