當試圖找到一個LDAP服務器上的用戶,我得到以下錯誤「未知錯誤(0x8000500c)」如何在LDAP服務器上找到用戶
這是我使用的代碼:
PrincipalContext domainContext = new PrincipalContext(ContextType.Domain, "gandalf.intrafg");
UserPrincipal p = UserPrincipal.FindByIdentity(domainContext, IdentityType.SamAccountName, "Consultor1");
順便說一句,下面的代碼似乎工作(沒有生成異常),但samAccountName通過字節數組。任何人都知道爲什麼?
DirectoryEntry entry = new DirectoryEntry("LDAP://gandalf.intrafg");
DirectorySearcher searcher = new DirectorySearcher(entry);
//searcher.PropertiesToLoad.Add("givenName");
//searcher.PropertiesToLoad.Add("sn");
searcher.PropertiesToLoad.Add("samAccountName");
searcher.Filter = "(&(objectCategory=person)(samAccountName=Consultor1))";
SearchResult result = searcher.FindOne();
我已經使用LDAP查詢,但我不熟悉您使用的查詢。是你的「(&(objectCategory = person)(samAccountName =」=「+ UserId +」))「有效嗎? – Aliostad 2010-09-09 12:41:09
是的,就像我說的第二塊代碼工作... – 2010-09-09 14:03:31