【发布时间】:2015-10-13 15:14:56
【问题描述】:
我们正在枚举测试广告中的数千名用户。整个过程可以在大约一个小时内运行。但是有时候,对于单个用户来说,下面几行代码会卡住10个小时左右。
这并不总是发生,当它发生时,它可能发生在任何 AD 用户身上。
using (DirectoryEntry de = new DirectoryEntry(String.Format(@"LDAP://{0}/<GUID={1}>", host, objectGUID), admin, password, server.AuthenticationMethod))
{
try
{
dn = (string)de.Properties["distinguishedName"][0];
}
catch
{
// log it...
}
}
在漫长的延迟之后,事情继续,好像什么都没有发生一样。
什么可能导致这种延迟?
【问题讨论】:
-
发生这种情况时服务器上还发生了什么?
-
似乎没什么大不了的。 AD 服务器的 CPU 或内存使用率不高。 NETSTAT 没有显示端口耗尽的迹象。客户端也在运行内部 ASP.NET 网站,但没有任何负担。
-
事件查看器中是否显示任何错误?发生这种情况时,活动目录是否有任何事件?
-
事件查看器中的任何一方都没有错误。在事件查看器之外,如何使用您提到的活动目录检查事件?
-
你的尝试没有任何问题,这段代码甚至不应该编译。我假设你没有给我们完整的图片。
标签: c# active-directory ldap directoryservices