2009-08-01 21 views
2

ASP.NetアプリケーションのBLLクラスからActive Directoryに入力された現在のユーザーのフルネームを取得する方法を理解しようとしています。これまでのところ私は持っています:ASP.Net BLLクラスのWindows認証からフルネームを取得

public static string Username 
    { 
     get 
     { 
      var name = System.Security.Principal.WindowsIdentity.GetCurrent().Name; 

      if (name.Contains("\\")) 
      { 
       var start = name.IndexOf("\\"); 

       if (name.Length > start) 
       { 
        name = name.Substring(start + 1); 
       } 
      } 

      return name; 
     } 
    } 

この問題は、これがユーザー名を返しますが、私もフルネームを必要としていることです。これが可能なら誰でも知っていますか?

答えて

3

DirectorySearcher ...

var search = new DirectorySearcher(new DirectoryEntry("LDAP://YourDomain")); 
search.Filter = "(sAMAccountName=UserNameHere)"; // put the identity name here 
var res = search.FindOne(); 
var name = res["displayName"]; // I believe this is the right property 
+0

Noooooesを使用して...しかし、私は実際には、クエリのADをしたくありません! –

関連する問題