У меня есть программа, которая зацикливает все электронные письма в Office 365, используя службы EWS, и, если они соответствуют некоторым критериям, они помечаются категорией. Затем я создаю папку поиска, которая просматривает письма, имеющие категорию.
Это мой код
SearchFolder searchFolder = new SearchFolder(service);
SearchFilter filter = new SearchFilter.ContainsSubstring(ItemSchema.Categories, categoryName);
searchFolder.DisplayName = "Mulige CPR-data";
searchFolder.SearchParameters.RootFolderIds.Add(WellKnownFolderName.Inbox);
searchFolder.SearchParameters.Traversal = SearchFolderTraversal.Deep;
searchFolder.SearchParameters.SearchFilter = filter;
try
{
searchFolder.Save(WellKnownFolderName.SearchFolders);
Console.WriteLine(searchFolder.DisplayName + " added.");
}
catch (Exception e)
{
//error handling
}
Папка поиска создается, но когда я обращаюсь к ней в Outlook 365, я получаю сообщение говоря что-то вроде «Ничего не найдено» (у меня есть версия dani sh, поэтому я не уверен насчет сообщения engli sh).
После сома и проб и ошибок я обнаружил, что вместо этого он работает нормально
SearchFilter filter = new SearchFilter.ContainsSubstring(ItemSchema.Subject, "subjectTest");
Итак, мой вопрос: почему моя папка seach не работает при использовании категорий, но работает нормально, когда проверяет что-то в теме.
Дополнительная информация - если я создаю seachfolder в Outlook, используя По тому же критерию поиска (категория) он работает нормально.