我的任务是将一些 c# v4 应用程序从一台服务器迁移到另一台服务器,并且我遇到了一个 aspx 表单的问题。
该表单调用了一个类以在其代码隐藏文件中搜索 AD 用户。它调用的方法如下。
public UserPrincipal GetADUser(string samAccountName)
{
try
{
UserPrincipal user = UserPrincipal.FindByIdentity(AD.domainContext, samAccountName);
return user;
}
catch(Exception ex)
{
throw new Exception(" Cant perform this operation:-"+ex.Message);
}
}
AD.domainContext 定义如下
private static PrincipalContext domainContext = new PrincipalContext(ContextType.Domain, ConfigurationHandler._ADDomain);
我的问题是该方法适用于我的两台服务器(VS Dev 和当前运行我从中迁移的代码的服务器),并在我试图迁移到的服务器上引发异常。所有服务器都是相同的环境 Windows Server 2k8 R2 运行 iis 7.5
被抛出的错误是
无法执行此操作:- 发生操作错误。
我进行了搜索并发现了以下 stackoverflow 问题,但似乎没有一个可以解决该问题
WCF 服务中的 System.DirectoryServices.AccountManagement.PrincipalContext 和模拟
Active Directory COM 异常 - 发生操作错误 (0x80072020)
有谁知道是什么导致这个错误在一个环境而不是其他环境中引发?
我试图调试代码,它在 VS 调试中运行良好,但是当代码部署到所述服务器时,我遇到了问题。
任何帮助、想法、想法将不胜感激。
如果我忘记包含任何内容,我很乐意详细说明所提供的任何信息。
提前致谢
尼古拉斯