Как определить почтовый ящик, содержащий данный элемент или папку, с помощью EWS? - PullRequest
2 голосов
/ 06 июля 2011

У меня есть программа, которая подписывается на несколько почтовых ящиков Exchange 2010 с помощью потоковых уведомлений EWS Managed API.

Когда я получаю уведомление, относящееся к элементу, мне нужно определить, к какому почтовому ящику принадлежит этот элемент.Я могу получить идентификатор элемента, идентификатор родительской папки и т. Д., Но не вижу способа определить, к какому почтовому ящику относится элемент.

Ответы [ 2 ]

3 голосов
/ 08 июля 2011

Хорошо, поэтому, если я правильно понимаю ваше приложение, вы используете олицетворение и создаете подписки для всех олицетворенных пользователей. И когда вы получаете событие из подписки, вы хотите знать, для какого пользователя это событие произошло. Если это так, разве вы не можете оставить свои подписки сопоставленными с пользователем, для которого была создана подписка? Простого Dictionary<StreamingSubscription, ImpersonateduserId> было бы достаточно А когда вы получаете уведомление, вы получаете объект подписки из свойства NotificationEventArgs.Subscription и находите идентификатор пользователя, для которого была создана подписка на вашей карте. Из ImpersonatedUserId вы можете получить SMTP-адрес (свойство Id) и узнать, какой именно пользователь был.

0 голосов
/ 10 сентября 2015
private void OnNotificationEvent(object sender, NotificationEventArgs args)
{
 string fromEmailAddress = args.Subscription.Service.ImpersonatedUserId.Id;
}

Вот так вы получаете адрес электронной почты почтового ящика, к которому принадлежит элемент.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...