【发布时间】:2014-03-07 12:08:13
【问题描述】:
我正在尝试从不同域获取用户详细信息,但它抛出以下错误:
An exception of type 'System.Runtime.InteropServices.COMException' occurred in System.DirectoryServices.dll but was not handled in user code
代码如下:
// Getting domain
var context = new DirectoryContext(DirectoryContextType.Domain, "alpha");
Domain domain = Domain.GetDomain(context);
using (DirectorySearcher searcher = new DirectorySearcher())
{
var de = new DirectoryEntry(domain.Name);
searcher.SearchRoot = de;
searcher.SearchScope = SearchScope.Subtree;
searcher.PropertiesToLoad.Add("sAMAccountName");
searcher.Filter = string.Format("(&(objectClass=user)(sAMAccountName={0}))", "myusername");
// *** ERROR HERE ***
var results = searcher.FindAll();
}
我已经尝试以域管理员身份运行 Visual Studio,但没有成功。
提前致谢。
【问题讨论】:
-
内部异常中有什么?
-
您是否尝试从与您连接的域不同的域中读取?您是否尝试在 DirectoryEntry 构造函数中为 DC (LDAP://xxx) 指定完整的 LDAP 字符串?
标签: c# asp.net asp.net-mvc-4 active-directory directorysearcher