从outlook中的globalAddressList检索电子邮件地址

时间:2017-03-28 19:06:01

标签: c# outlook-addin

根据AddressEntry.Address属性的描述,我希望以下内容为"返回表示AddressEntry的电子邮件地址的字符串(C#中的字符串)。"

  Outlook.AddressList gal = Application.Session.GetGlobalAddressList();
  Outlook.AddressEntries ae = gal.AddressEntries;
  List<string> email = new List<string>();

  foreach (Outlook.AddressEntry e in ae)
  {
      email.Add(e.Address);
  }

相反,电子邮件列表填满了看起来像......

的字符串
"/o=companyName/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=firstname.lastname"

我希望它返回类似......

firstname.lastname@mycompany.com

我如何错误地使用它?

1 个答案:

答案 0 :(得分:2)

如果AddressEntry.Type == "EX",请使用AddressEntry.GetExchangeUser().PrimarySmtpAddress。准备好处理空值和异常。