2013-06-18 3 views
2

Как я могу решить эту проблему:Microsoft Exchange: Как решить отличительное имя

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

на адрес электронной почты? Должен ли я использовать веб-службы Exchange?

+0

Я тоже любопытно об этом! – Maritim

+0

Это совершенно допустимый адрес EX-типа. Вы хотите разрешить его на SMTP-адрес? Решить, используя какой API? –

ответ

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(); 
    } 
} 
0

Если вы можете сделать поиск в LDAP каталога вы можете получить запись для этого пользователя и адрес электронной почты по умолчанию будет по почте: атрибуту

Если почтовый ящик с поддержкой пользовательского обмена там будет также должны быть адресами в атрибуте proxyAddresses: контакта или пользователя с почтовым ящиком без почты, в целевом адресе будут удаленные адреса: атрибут