Я пытаюсь получить конкретное письмо от EWS, используя C #, но не смог найти способ идентифицировать конкретное письмо.
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2013_SP1);
service.Credentials = new WebCredentials(myemail, password);
service.UseDefaultCredentials = false;
service.Url = new Uri("https://outlook.office365.com/EWS/Exchange.asmx");
ItemView itemsView = new ItemView(5);
string querystring = "Kind:email";
FindItemsResults<Item> itemResults = service.FindItems(WellKnownFolderName.Inbox, querystring, view: itemsView);
Метод FindItems выдает электронные письма на основе строки запроса.Я сохраняю EmailMessage.InternetMessageId
и EmailMessage.Id
и подробности о предмете в моей базе данных.В моем случае у меня могут быть электронные письма с темой и немного другим содержанием тела.
Позже, основываясь на действиях пользователя, я хочу получить конкретную электронную почту с сервера обмена.Могу ли я использовать какой-либо метод и получать электронную почту на основе EmailMessage.InternetMessageId
или EmailMessage.Id
?Эти идентификаторы надежны?Я не мог найти метод в документах.В настоящее время я думаю о том, чтобы прочитать электронные письма по теме, а затем отфильтровать результаты по EmailMessage.Id.UniqueId
Есть ли какой-нибудь хороший альтернативный способ получения конкретной почты с сервера обмена?