我有这个类LDAP,它可以让用户从AD中获取。它在本地工作,但是当我在远程服务器上部署时,我得到Unknown错误(0x8000500c)。 从远程计算机上的堆栈跟踪开始,我假设在调用GetUsers()库方法时抛出错误:
[COMException (0x8000500c): Unknown error (0x8000500c)]
Library.LDAP..ctor(String login) in C:\Users\xxx\Documents\Visual Studio 2010\Projects\XXXLib\XXXLibrary\LDAP.cs:75
XXXLibrary.LDAP.<GetUsers>b__0(String login) in C:\Users\adkozak\Documents\Visual Studio 2010\Projects\XXXLib\XXXLibrary\LDAP.cs:148
System.Linq.WhereSelectListIterator`2.MoveNext() +110
System.Collections.Generic.List`1..ctor(IEnumerable`1 collection) +327
System.Linq.Enumerable.ToList(IEnumerable`1 source) +58
XXXLibrary.LDAP.GetUsers(List`1 logins) in C:\Users\xxx\Documents\Visual Studio 2010\Projects\XXXLib\XXXLibrary\LDAP.cs:148
远程IIS上的身份验证设置为:
Windows Authentication: Enabled
ASP.NET Impersonation: Enabled
其他类型已停用。
每一个线索,帮助将不胜感激。我不知道我能做错什么。
答案 0 :(得分:1)
啊,我终于找到了什么错误 - 错误0x8000500c意味着Active Directory Datatype Cannot be Converted to/from a Native DS Datatype
我使用BeaverTail ADSI Browser查看了LDAP条目,并注意到其中一个属性不是字符串而是数组。希望这对任何人都有帮助!