我曾尝试在与 EWS 的约会中使用扩展属性,但我似乎无法再次找到约会。设置属性部分等于这个问题中显示的部分:
如何从 ASP.NET 中的 Exchange Web 服务托管 API 2.0 更新约会
当我尝试检索约会时,我遵循了以下示例:
http://msdn.microsoft.com/en-us/uc14trainingcourse_5l_topic3#_Toc254008129 http://msdn.microsoft.com/en-us/library/exchange/dd633697(v=exchg.80).aspx
但是,当我进行查找时,我从来没有收到任何约会。
这是查找的代码:
ItemView view = new ItemView(10);
// Get the GUID for the property set.
Guid MyPropertySetId = new Guid("{" + cGuid + "}");
// Create a definition for the extended property.
ExtendedPropertyDefinition extendedPropertyDefinition =
new ExtendedPropertyDefinition(MyPropertySetId, "AppointmentID", MapiPropertyType.String);
view.PropertySet =
new PropertySet(
BasePropertySet.IdOnly,
ItemSchema.Subject,
AppointmentSchema.Start,
AppointmentSchema.End, extendedPropertyDefinition);
SearchFilter filter = new SearchFilter.Exists(extendedPropertyDefinition);
FindItemsResults<Item> findResults = service.FindItems(WellKnownFolderName.Inbox, filter,
view);
任何帮助是极大的赞赏。
编辑: 当我尝试创建文档显示的属性时:
http://msdn.microsoft.com/en-us/library/exchange/dd633654(v=exchg.80).aspx
它失败了,因为它是作为属性值添加的 Guid。:-/
再次编辑: 刚刚尝试获取今天的所有约会,并从我刚刚创建的约会中获取属性,它说的和我存储的一样,没有 {},所以它必须与过滤器有关。
再次编辑* 它与
ExtendedPropertyDefinition extendedProperty = new ExtendedPropertyDefinition(
如果我使用:
new ExtendedPropertyDefinition(
DefaultExtendedPropertySet.Appointment,
"AppointmentID",
MapiPropertyType.String);
它会找到所有具有属性的约会,但如果我搜索一个特定的约会:
Guid MyPropertySetId = new Guid("{" + cGuid + "}");
ExtendedPropertyDefinition extendedProperty =
new ExtendedPropertyDefinition(
MyPropertySetId,
"AppointmentID",
MapiPropertyType.String);
然后什么也找不到。