针对LDS的C#LDAP

针对LDS的C#LDAP,c#,.net,active-directory,lds,C#,.net,Active Directory,Lds,我正在尝试解决此问题,但无法使其正常工作。 问题 我的问题出了什么问题 代码 private static void ExecuteQuery() { string sDomain = "10.12.14.165:389"; string sDefaultOU = "CN=GeneralUsers,CN=Company,DC=Server,DC=LDS,DC=LOCAL"; string sServiceUs


我正在尝试解决此问题,但无法使其正常工作。
问题

我的问题出了什么问题

代码

private static void ExecuteQuery()
        {
            string sDomain = "10.12.14.165:389";
            string sDefaultOU = "CN=GeneralUsers,CN=Company,DC=Server,DC=LDS,DC=LOCAL";
            string sServiceUser = "myUser";
            string sServicePassword = "myPassword";


            DirectoryEntry ldapEntry = new DirectoryEntry("LDAP://" + sDomain + @"/" + sDefaultOU,
                                                          sServiceUser,
                                                          sServicePassword);

            DirectorySearcher ldapSearcher = new DirectorySearcher(ldapEntry);
            //Error Occurs here
            SearchResultCollection ldapResult = ldapSearcher.FindAll();
        }
错误

@SearchResultCollection ldapResult=ldapSearcher.FindAll()
异常:服务器上没有此类对象

注意

对象确实存在


LDS配置中出现问题。与我进行身份验证的用户没有LDS权限,我使用的查询工作正常。

如果该对象确实存在,并且您收到一条消息说它不存在,则您用于执行查询的服务帐户很可能没有访问该对象的权限如果您的服务器不是AD LDS(ADAM)服务器,尽量不要在DirectoryEntry构造函数中指定“sDefaultOU”。在这种情况下,查看错误是否消失。无论如何,请将所有内容都包装在“使用”块中,尤其是SearchResultCollection。从我第一眼看到的情况来看,这里似乎存在错误
string sDefaultOU=“CN=GeneralUsers,CN=Company,DC=Server,DC=LDS,DC=LOCAL”
例如,我刚刚尝试在LDAP/AD服务器上执行以下操作,结果显示我如何使用
DC=
DirectoryEntry DirectoryEntry=new DirectoryEntry(“LDAP://someserver.somedomain.com/DC=somedomain,DC=com”,用户名、密码)
如果没有sDefaultOU,我会得到“服务器上没有这样的对象”@NickProzee请尝试指定AD服务器的FQDN,而不是其IP地址。同时拆下端口。