EWS 解析名称不会 return 邮箱,即使它存在于 exchange 服务器中

EWS Resolve name doesn't return mailbox even if that exists in the exchange server

我正在尝试使用 EWS 服务从交换服务器搜索邮箱,如下所示。

 ewsClient.ResolveName("roomname@microsoft.com", ResolveNameSearchLocation.DirectoryThenContacts, true, props)

但它总是returns一个空列表意味着交换服务器中没有邮箱有这个地址。 实际上,该邮箱存在于交换服务器中,我们可以使用

通过 PowerShell 访问它
 Get-Mailbox "roomname@microsoft.com"

EWS 和 PowerShell 使用相同的服务帐户访问。

可能是什么问题?

EWS 中的 ResolveName 操作只会 return 全局地址列表中可见对象的结果。 Get-Mailbox 和 hiddenfromaddresslistsenabled 属性 将显示它是否对 GAL 隐藏。