【问题标题】:Microsoft Exchange: How To Resolve A Distinguished NameMicrosoft Exchange:如何解析专有名称
【发布时间】:2013-06-18 11:48:51
【问题描述】:

我该如何解决这个问题:

/O=CHEESE/OU=FIRST ADMINISTRATIVE GROUP/CN=RECIPIENTS/CN=LHALA1

到一个电子邮件地址?我必须使用 Exchange 网络服务吗?

【问题讨论】:

  • 我也很好奇这个!
  • 这是一个完全有效的 EX 类型地址。是否要将其解析为 SMTP 地址?用什么API解决?

标签: c# active-directory exchange-server distinguishedname


【解决方案1】:

我假设这是 legacyExchangeDN 属性。

试试这样的:

string dn = "/O=CHEESE/OU=FIRST ADMINISTRATIVE GROUP/" +
        "CN=RECIPIENTS/CN=LHALA1";
string MailAddress=string.Empty;
string user = string.Empty;

using (DirectorySearcher ds = new DirectorySearcher())
{
    ds.Filter = string.Format("(&(ObjectClass=User)(legacyExchangeDN={0}))", 
            dn);
    SearchResultCollection src = ds.FindAll();
    if (src.Count > 1)
    {
        //Oops too many!
    }
    else
    {
        user = src[0].Properties["samAccountName"][0].ToString();
        MailAddress = src[0].Properties["Mail"][0].ToString();
    }
}

【讨论】:

    【解决方案2】:

    如果您可以对目录进行 LDAP 搜索,则可以检索该用户的条目,然后默认电子邮件地址将在邮件中:属性

    如果是启用邮箱的 Exchange 用户,proxyAddresses: 属性中也会有地址,联系人或非邮箱启用邮件的用户的 targetAddress: 属性中也会有远程地址

    【讨论】:

      猜你喜欢
      • 2019-05-15
      • 2012-07-19
      • 1970-01-01
      • 1970-01-01
      • 2023-03-11
      • 1970-01-01
      • 2021-11-24
      • 1970-01-01
      相关资源
      最近更新 更多