如何使用Outlook EWS使用其AD登录ID获取用户详细信息(作业,标题,部门,位置等)

时间:2013-12-04 17:54:30

标签: outlook exchangewebservices details

我需要通过他的AD登录ID获取用户的某些详细信息。

请记住,我只是不想只查看该用户的联系人。我想查看全局列表并查找详细信息(当您双击电子邮件中人员的姓名时,会显示类似的详细信息,来自,cc)

我发现很多链接,但他们没有显示全局搜索用户的任何示例。

我尝试在此链接中显示类似的内容 http://msdn.microsoft.com/en-us/library/jj220498(v=exchg.80).aspx

但它只是在我自己的联系人中。

任何人都可以展示一个简单的示例或链接吗?

3 个答案:

答案 0 :(得分:2)

我发现ResolveName方法可以解决问题。我可以按用户的全名查询。我只是发布一个方法。我假设“服务”已经使用适当的域/网址/凭证进行实例化

 public Contact GetContactInfo(string sFullName)
    {
        Contact contact = null;
        try
        {
            NameResolutionCollection allContacts = service.ResolveName(sFullName, ResolveNameSearchLocation.DirectoryOnly, true);

            if (allContacts.Any())
            {
                contact = allContacts[0].Contact;
            }
        }
        catch (Exception ex)
        {
            LogHelper.Error("Error in GetContactInfo(): ", ex);
            //throw;
        }


        return contact;




    }

答案 1 :(得分:0)

您是否尝试过ResolveName方法?

http://msdn.microsoft.com/en-us/library/microsoft.exchange.webservices.data.exchangeservice.resolvename%28v=exchg.80%29.aspx

您可以使用它搜索联系人文件夹和/或全局地址列表。确保设置布尔值以返回与它的联系。

答案 2 :(得分:0)

我正在寻找用户的详细信息, GetPersona 就是这个操作。 分享它可能会帮助其他正在挖掘Google和Google的用户。微软获取用户信息。

GetPersona operation

GetPersona 操作返回一组与角色关联的属性。