Huh…. schließlich bildete ich es Arbeit nach einem langen Kampf….
Dank für jeder für die Sparsamkeit von etwas Zeit und von Bemühung in meine Frage.
Das folgende ist die Schritte, zum von LDAP Funktion zu bilden… (ein Verzicht hier ist, dass ich nicht sicher bin, wenn es irgendwelche anderen ANZEIGEN-Implementierungen gibt, in denen diese Lösung nicht Arbeit konnte)
1) Vorbereiten/Bau Ihre LDAP Aussage, wie unten zu sein.
LDAP: ///DC=neofdomainname>
, DC=rttwoofdomainname>
Anmerkung: Was ist dieses partXofdomainname? Gut gebildet jedes Domain Name von den mehrfachen Teilen (genauer technischer Ausdruck bekannt nicht zu mir). Jedes Teil getrennt bis zum einem Zeitraum (.)und Sie müssen alle Teile zur Verfügung stellen, die durch Kommas getrennt und „DC“ zugewiesen.
2) Einen DirectoryEntry Gegenstand mit dem errichteten Weg verursachen.
3) Einen DirectorySearcher Gegenstand verursachen und das SearchRoot des Gegenstandes dem DirectoryEntry Gegenstand dann zuweisen.
Anmerkung: aus irgendeinem Grund, wenn ich dem Erbauer des DirectorySearcher den DirectoryEntry Gegenstand als Parameter führe, funktioniert es nicht.
4) Einen Filter dem DirectorySearcher Gegenstand für die Schnur hinzufügen „(u. (objectClass=user) (cn=“ + username + ")) „… und das username ist die Identifikation des Benutzers, den Sie am Ende der Schnur validieren müssen.
5) Einen anderen Filter dem DirectorySearcher Gegenstand für das sAMAccountName wie hinzufügen „(sAMAccountName=“ + username + ") „.
6) Einen SearchResultCollection Gegenstand dann verursachen und das Resultat der FindAll oder FindOne Methode zuweisen Resultat des DirectorySearcher Gegenstandes.
Ex:
DirectoryEntry De = neues DirectoryEntry ();
DirectorySearcher DS = neues DirectorySearcher ();
DS.SearchRoot = De;
DS.Filter = „(u. (objectClass=user) (cn=“ + username + ")) „;
DS.Filter = „(sAMAccountName=“ + username + ") „;
SearchCollection searchResult = DE.FindOne (); //Can verwenden auch DE.FindAll ();
7) Wenn Sie gerade sicherstellen müssen, dass der Benutzer existiert, dann den Zählimpuls von searchResult überprüfen.
8) Sonst müssen Sie zusätzliche Aussagen addieren, um die PropertiesToLoad Methode des DirectorySearcher Gegenstandes zu behandeln.
Das ist alles,…, das Sie .......: getan)