Мониторинг почтового ящика для нового почтового сообщения с использованием EWS Managed API - PullRequest
0 голосов
/ 21 июня 2011

Я работаю над задачей, в которой раньше никогда не работал.

Задача: Отслеживание определенного почтового ящика на почтовом ящике на сервере Exchange 2007. Итерирование по всем сообщениям электронной почты (только сообщения электронной почты)), выполните некоторую обработку и перейдите в определенную папку в том же почтовом ящике.

Работа, которую я сделал

// Create the binding
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2007_SP1);
//service.Credentials = new WebCredentials("mailbox", "password", "mailbox@something.com");
service.Credentials = new NetworkCredential(ConfigurationManager.AppSettings["ExchangeUsername"].ToString(), ConfigurationManager.AppSettings["ExchangePassword"].ToString(), "something/domain");
// Set the url.
//service.AutodiscoverUrl("mailbox@something.com");
service.Url = new Uri(ServiceUrl);
ItemView view = new ItemView(10);
view.Traversal = ItemTraversal.Shallow;
view.PropertySet = new PropertySet(BasePropertySet.IdOnly);
List<SearchFilter> searchFilterCollection = new List<SearchFilter>();
//searchFilterCollection.Add(new SearchFilter.ContainsSubstring(ItemSchema.ItemClass, "MessageType"));
searchFilterCollection.Add(new SearchFilter.ContainsSubstring(ItemSchema.Subject, "test to be deleted"));
SearchFilter searchFilter = new SearchFilter.SearchFilterCollection(LogicalOperator.Or, searchFilterCollection.ToArray());

FindItemsResults<Item> results = service.FindItems(WellKnownFolderName.Inbox, view);

По какой-то причине я всегда получаю results.items.count = 9, но в Mailbox@something.com есть только один EmailMessage,Я делаю что-то неправильно в поиске.Если в почтовом ящике было 5 писем, то я должен считать 5 и перебирать 5 писем.Есть ли способ запрашивать только сообщения электронной почты?Любая помощь приветствуется.Спасибо.

1 Ответ

0 голосов
/ 20 июля 2011

Я недавно ответил на свой вопрос, но забыл обновить здесь.Поэтому, когда я сказал, что счетчик не совпадает, он отслеживает почтовый ящик олицетворяющей учетной записи.По совпадению у олицетворяющей учетной записи есть почтовый ящик.

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