如何使用EWS识别Exchange电子邮件的GroupMember?

时间:2016-01-01 13:08:43

标签: c# exchange-server exchangewebservices

我希望获得Custom Group的所有组成员的标识(用户创建的组)。我试过跟随。 我在member.Id字段中得到null。我想使用Id进行联系人识别。

foreach (var contactEntity in service.FindItems(WellKnownFolderName.Contacts, new ItemView(int.MaxValue)))
{
    try
    {
        Microsoft.Exchange.WebServices.Data.ContactGroup contactGroup = contactEntity as Microsoft.Exchange.WebServices.Data.ContactGroup;
        case ExchangeVersion.Exchange2007_SP1:
                    ExpandGroupResults groupResults
                        = service.ExpandGroup((contactGroup.Id));
                    List<Entity.Contact> groupMembers = new List<Entity.Contact>();
                    foreach (var member in groupResults)
                    {
                        Entity.Contact objContact = new WorkBook.Data.Entity.Contact();
                        objContact.DisplayName = member.Name;
                        objContact.Email = member.Address;
                        objContact.ExchangeContactId = member.Id.ToString();  //get null
                        groupMembers.Add(objContact);
                    }
                    break;

        }
    }
    catch (Exception)
    {
    }
}

有人能告诉我这里我缺少什么吗?

1 个答案:

答案 0 :(得分:0)

您是否可以返回基础ID将取决于每个联系人组成员的收件人类型。例如,使用联系人组,您可以添加OneOff地址https://msdn.microsoft.com/en-us/library/office/cc842281.aspx,这意味着没有潜在的联系人可以返回Id,因此在这种情况下可能会出现空结果。在这种情况下,EmailAddress应该是关键。

欢呼声 格伦