Code-Beispiel
Ein Beispiel zum Einsatz der Klasse System.DirectoryServices.DirectoryEntry aus der .NET-Klassenbibliothek.
Autor: Dr. Holger Schwichtenberg
Beschreibung
Um einen Benutzer zu einer Gruppe hinzuzufügen, bindet man eine Instanz der Klasse DirectoryEntry an das Gruppen-Objekt und führt dort die in der COM-Schnittstelle IADsGroup definierte Methode Add() aus. Als Parameter ist der LDAP-Pfad des hinzuzufügenden Benutzer-Objekts anzugeben.
Für diese Operation gibt es noch keine Methode in einer .NET-Klasse.
Beispiel
In der folgenden Routine wird der zuvor angelegte Benutzer "H.Schwichtenberg" der angelegten Gruppe "Sprecher" hinzugefügt.
Programmcodebeispiele Visual Basic .NET (VB.NET)
' ============================
' .NET-Code-Beispiel in Visual Basic .NET
' AD-Benutzer einer AD-Gruppe hinzufügen
' (C) Holger@Schwichtenberg.de
' ============================
Sub ADSBenutzer_zuGruppe()
Dim o As DirectoryEntry
out("# Hinzufügen des Benutzers " & LDAPhs & _
" zu Gruppe: " & LDAPsprecher)
' --- Zugriff auf Eintrag
o = New DirectoryEntry(LDAPsprecher)
' --- IADSGroup::Add() aufrufen
o.Invoke("Add", LDAPhs)
' --- Bestätigung
out("Benutzer zu Gruppe hinzugefügt!")
End Sub
Programmcodebeispiele CSharp (C#)
using System;
using System.DirectoryServices;
using ActiveDs;
namespace FCLBuch._SystemDirectoryServices {
public class Samples_ADSI {
public void ADSBenutzer_zuGruppe() {
// AD-Benutzer einer AD-Gruppe hinzufügen
FclOutput.PrintOut("# Hinzufügen des Benutzers " + LDAPhs + " zu Gruppe: " + LDAPsprecher);
// Zugriff auf Eintrag
DirectoryEntry o = new DirectoryEntry(LDAPsprecher);
// IADSGroup::Add() aufrufen
o.Invoke("Add", LDAPhs);
// Bestätigung
FclOutput.PrintOut("Benutzer zu Gruppe hinzugefügt!");
}
}
}
Hinweise
Ausgaben werden in den Beispielen durch Hilfsroutinen wie out() und
PrintOut() erzeugt. Diese sind hier nicht angegeben, da deren Implementierung
von der jeweiligen Umgebung abhängt. Für Konsolenanwendungen können hier z.B.
Console.WriteLine() einsetzen.
Querverweise
Liste aller Codebeispiele
Definition '.NET Framework Class Library'
Verfügbarkeit der Klasse 'System.DirectoryServices.DirectoryEntry'
Übersicht über den FCL-Namensraum 'System.DirectoryServices'
.NET & Visual Studio Community Portal