【发布时间】:2018-03-05 13:58:31
【问题描述】:
我想从交换服务器中获取与特定电话号码匹配的用户。我特别希望 GAL(全局地址列表)中的用户不是来自用户的个人电话簿。我尝试了几种方法,但都无济于事。
首先我用过
service.ResolveName("SMTP:", ResolveNameSearchLocation.DirectoryOnly, true)
如此处所述:Get all contacts from exchange server,但我无法按电话号码过滤此列表,并且该列表仅限于 100 个联系人。
那我用过:
ContactsFolder.Bind(service, WellKnownFolderName.Contacts);
如此处所述:How to retrieve all contacts from Microsoft Exchange using EWS Managed API? 和此处:How do I get address lists (NOT global) using Exchange WebServices in C#。这只会从个人电话簿中检索联系人。
最后,我按照此处所述进行了 SOAP 调用:How to get all users form Exchange with EWS,但这会返回所有没有电话的联系人 - 我必须通过 id 再次查询每个人以获取电话详细信息。最大的问题是我需要知道 EWS 无法检索到的 GAL 的 GUID。
是否可以通过电话号码过滤 GAL?有没有其他方法可以做到这一点?
我的项目是在 Visual Studio 2017 中用 C# .Net 编写的。我已经部署了一个测试 Exchange Server 2017(如果需要,我可以提供更多详细信息和访问权限)
【问题讨论】:
标签: c# .net exchange-server exchangewebservices ews-managed-api