将此代码部署到身份为应用程序池用户的Web应用程序时,以下代码会引发未知的COM异常。当调用FindByIdentity方法时发生异常。GroupPrincipal.FindByIdentity未知COM异常
System.Runtime.InteropServices.COMException:未知错误 (0x8000500c)
using (PrincipalContext prinCon = new PrincipalContext(ContextType.Domain))
{
GroupPrincipal groupPrin = GroupPrincipal.FindByIdentity(prinCon, name);
}
如果我更改应用程序池标识这一问题得到解决的域用户。最初导致我认为这是一个权限/安全问题。但是,这个错误不会发生在所有服务器上,只是一些。此外,重新启动将解决此问题。
所以,我的问题是为什么会重新启动服务器解决这个问题?有没有办法让我的工作无需重新启动?
我已经做了大量的谷歌搜索,并没有遇到任何人有同样的问题,一些权限类似的问题,但没有任何帮助解决我的问题。
在此先感谢。
什么是你的'name'值?你在那里指定了什么? – 2012-03-13 16:12:38
它是要搜索的组的名称,字符串,例如“管理员” – user1084440 2012-03-13 17:11:23
在更改为使用域用户之前,您正在使用的应用程序池用户帐户是什么?它是一个本地用户帐户吗? 你能否在这里粘贴应用程序池用户帐户名? “GroupPrincipal.FindbyIdentity”显然需要将您的应用程序池用户帐户验证到Active Directory以执行LDAP查询。 – 2012-03-24 19:47:28