EWS扩展属性到Microsoft Graph扩展属性

时间:2020-02-20 11:18:27

标签: asp.net asp.net-core exchangewebservices microsoft-graph-calendar

有人可以告诉我如何将EWS扩展属性转换为Microsoft Graph扩展属性定义,因为我无法访问使用EWS创建的约会的单个值扩展属性。 通过Graph API创建约会时,我可以访问定义的属性。
这是我的EWS属性定义:

ExtendedPropertyDefinition myPropertyDefinition = new ExtendedPropertyDefinition(DefaultExtendedPropertySet.PublicStrings, 1001, MapiPropertyType.String);

我尝试了以下变体,但没有一个对我有用。我没有收到单个值扩展属性数组。

https://graph.microsoft.com/v1.0/me/calendar/events?$expand=SingleValueExtendedProperties($filter=Id eq 'String 1001')
https://graph.microsoft.com/v1.0/me/calendar/events?$expand=SingleValueExtendedProperties($filter=Id eq 'String 0x3E9')
https://graph.microsoft.com/v1.0/me/calendar/events?$expand=SingleValueExtendedProperties($filter=Id eq 'Integer 1001')
https://graph.microsoft.com/v1.0/me/calendar/events?$expand=SingleValueExtendedProperties($filter=Id eq 'Integer 0x3E9')

我搜索了常见问题,但没有一个对我有帮助。
任何想法都会有所帮助。
谢谢。

1 个答案:

答案 0 :(得分:1)

给出您的示例,您需要包括Public String的GUID,这样它应该看起来像

https://graph.microsoft.com/v1.0/me/calendar/events?$expand=SingleValueExtendedProperties($filter=(Id eq 'Integer {00020329-0000-0000-C000-000000000046} Id 0x3E90'))

但是,如果您使用lid值来命名属性,命名属性定义看起来不正确,范围应该为0x8000和0x8FFF https://docs.microsoft.com/en-us/openspecs/office_file_formats/ms-pst/60003704-dfa6-476f-b782-ce8bb52a2df3

您尝试使用的属性范围是保留的,如果您使用PublicStrings可能使用唯一字符串作为属性ID会是一个更好的主意,那么它确实起作用了。