无法通过 EWS 获取房间笔记 API
Cannot fetch room notes through EWS API
我想为带有 EWS API 的房间获取字段 Notes
。
此字段存在于 Outlook 中,但我找不到使用 API 获取它的方法。
到目前为止,我尝试通过以下方式获取它:
NameResolutionCollection nameResolutions = service.resolveName(room.getName(), ResolveNameSearchLocation.DirectoryThenContacts, true);
但返回的联系人中不存在 Notes
字段。
我也试过用
获取它
Contact roomContact = Contact.bind(service, new ItemId(room.getId()), new PropertySet(BasePropertySet.FirstClassProperties, ContactSchema.Body));
// roomContact.getBody().toString() should contains the 'Notes' field
但是房间没有任何ItemId: room.getId()
returns null
最后,我尝试用 nameResolution.getContact().load(new PropertySet(ItemSchema.Body))
加载 属性,但这次出现异常 InvalidOperationException: This operation can't be performed because this service object doesn't have an Id
。
您知道如何获取房间的 Notes
字段吗?我可能也对查找房间 ID 的方法感兴趣。
您需要在 ResolveName 中使用 PropertySet 重载来指定您想要由 ResolveName return 编辑的所有属性(如果启用,这也将 return Userphoto)例如
PropertySet AllProps = new PropertySet(BasePropertySet.FirstClassProperties);
NameResolutionCollection ncCol = service.ResolveName("User@domain.com", ResolveNameSearchLocation.DirectoryOnly, true, AllProps);
foreach (NameResolution nr in ncCol)
{
Console.WriteLine(nr.Contact.Notes);
}
您无法从 GAL 对联系人进行加载 return,因为这不是 Exchange 存储对象(例如,它没有 EWSId)。
干杯
格伦
我想为带有 EWS API 的房间获取字段 Notes
。
此字段存在于 Outlook 中,但我找不到使用 API 获取它的方法。
到目前为止,我尝试通过以下方式获取它:
NameResolutionCollection nameResolutions = service.resolveName(room.getName(), ResolveNameSearchLocation.DirectoryThenContacts, true);
但返回的联系人中不存在 Notes
字段。
我也试过用
获取它Contact roomContact = Contact.bind(service, new ItemId(room.getId()), new PropertySet(BasePropertySet.FirstClassProperties, ContactSchema.Body));
// roomContact.getBody().toString() should contains the 'Notes' field
但是房间没有任何ItemId: room.getId()
returns null
最后,我尝试用 nameResolution.getContact().load(new PropertySet(ItemSchema.Body))
加载 属性,但这次出现异常 InvalidOperationException: This operation can't be performed because this service object doesn't have an Id
。
您知道如何获取房间的 Notes
字段吗?我可能也对查找房间 ID 的方法感兴趣。
您需要在 ResolveName 中使用 PropertySet 重载来指定您想要由 ResolveName return 编辑的所有属性(如果启用,这也将 return Userphoto)例如
PropertySet AllProps = new PropertySet(BasePropertySet.FirstClassProperties);
NameResolutionCollection ncCol = service.ResolveName("User@domain.com", ResolveNameSearchLocation.DirectoryOnly, true, AllProps);
foreach (NameResolution nr in ncCol)
{
Console.WriteLine(nr.Contact.Notes);
}
您无法从 GAL 对联系人进行加载 return,因为这不是 Exchange 存储对象(例如,它没有 EWSId)。
干杯 格伦