Я пытаюсь получить электронную почту с сервера Exchange, используя ниже код:Получение уникальных писем EWS Managed Web API
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2007_SP1);
service.Credentials = new WebCredentials("username", "somepassword");
service.TraceEnabled = true;
service.TraceFlags = TraceFlags.All;
service.AutodiscoverUrl("username", RedirectionUrlValidationCallback);
FindItemsResults<Item> findResults = service.FindItems(WellKnownFolderName.Inbox, new ItemView(10));
ServiceResponseCollection<GetItemResponse> items =
service.BindToItems(findResults.Select(item => item.Id), new PropertySet(BasePropertySet.FirstClassProperties, EmailMessageSchema.From, EmailMessageSchema.ToRecipients));
return items.Select(item =>
{
return new MailItem()
{
From = ((Microsoft.Exchange.WebServices.Data.EmailAddress)item.Item[EmailMessageSchema.From]).Address,
Recipients = ((Microsoft.Exchange.WebServices.Data.EmailAddressCollection)item.Item[EmailMessageSchema.ToRecipients]).Select(recipient => recipient.Address).ToArray(),
Subject = item.Item.Subject,
Body = item.Item.Body.ToString(),
};
}).ToArray();
Мне нужно, чтобы сохранить тему и тело в моей базе данных. Но мне нужны уникальные электронные письма, потому что я не хочу, чтобы избыточные электронные письма отображались в моей системе.
Значит каждый раз, когда я синхронизирую свою систему с сервером обмена, я получаю новые письма, которые я еще не синхронизировал.
Да Мне нужно сохранить электронные письма в моей базе данных .... Есть ли способ, как уникальный идентификатор сообщения электронной почты, из которого я могу отличить одно письмо от другого –
Возможно, это поможет: http://stackoverflow.com/questions/22960203/how-to-get-the-item-id-of-a-mail-item-in-exchange-2010 – Ephedra