gpt4 book ai didi

c# - EWS - 如何找到所有未完成的任务?

转载 作者:行者123 更新时间:2023-11-30 15:04:45 27 4
gpt4 key购买 nike

我正在使用 Exchange Web 服务来尝试获取所有未完成的 Outlook 任务的列表。

我有一个 ExchangeService 实例,并尝试像这样查找所有未完成的任务:

SearchFilter searchFilter = new SearchFilter.IsNotEqualTo(TaskSchema.Status, TaskStatus.NotStarted);
FindItemsResults<Item> tasks = service.FindItems(WellKnownFolderName.Tasks, searchFilter, view);

但是,在最后一行,我收到“ServiceResponseException:指定的值对属性无效。”这对我来说似乎很奇怪,因为 the EWS documentation explicitly states Task.Status 应该是 TaskStatus 枚举值之一。创建一个与字符串值进行比较的 SearchFilter 不会导致异常,但我没有尝试任何其他枚举选项来查看它们是否提供相同的行为。

最佳答案

我可以在 Exchange 2007 中使用 ExtendedPropertyDefinition 来做到这一点。

我正在使用 PidLidTaskComplete Canonical Property .

可用命名属性的完整列表 here .

//Create the extended property definition.
ExtendedPropertyDefinition taskCompleteProp = new ExtendedPropertyDefinition(DefaultExtendedPropertySet.Task, 0x0000811C, MapiPropertyType.Boolean);
//Create the search filter.
SearchFilter.IsEqualTo filter = new SearchFilter.IsEqualTo(taskCompleteProp, false);
//Get the tasks.
FindItemsResults<Item> tasks = service.FindItems(WellKnownFolderName.Tasks, filter, new ItemView(50));

关于c# - EWS - 如何找到所有未完成的任务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9823489/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com