Datagrid ausgabe fehlerhaft?(ldap)

BastiFantasti86

Grünschnabel
Hallo!
Ich Programmiere mit VB.NET und NET 1.1.
Bei mir ist im Code ein fehler enthalten. Er sagt "Es ist ein Fehler bei der Ausführung aufgetreten" Ich will mein LDAP pfad, also die User einfach an ein Datagrid übergeben und als Tabelle ausgeben lassen. Ist die übergabe fehlerhaft?
Danke im Voraus!

Code:
Imports System.Data
Imports System.Drawing
Imports System.Web.SessionState
Imports System.Web.UI.WebControls
Imports System.Web.UI.HtmlControls
Imports System.DirectoryServices

Namespace WebApplication1
    Public Class WebForm2
        Inherits System.Web.UI.Page
        Protected WithEvents DataGrid1 As System.Web.UI.WebControls.DataGrid
        Protected de As DirectoryEntry
        Public ds As DataSet

        Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

            Dim de As New DirectoryEntry("LDAP://xxxx:389/OU=xxx,DC=xxxxxxxx,DC=xxxx,DC=xxx", "", "", System.DirectoryServices.AuthenticationTypes.ServerBind)
            Dim src As New DirectorySearcher("(objectclass=User)")
            'DataTable for users
            Dim tbUsers As New DataTable("users")
            'Create Columns for DataTable.
            tbUsers.Columns.Add("cn", System.Type.[GetType]("System.String"))
            ds.Tables.Add(tbUsers)
            'DataTable for properties
            Dim tbProperties As New DataTable("properties")
            'Create Columns for DataTable.
            tbProperties.Columns.Add("PropertyName", System.Type.[GetType]("System.String"))
            tbProperties.Columns.Add("PropertyValue", System.Type.[GetType]("System.String"))
            ds.Tables.Add(tbProperties)

            src.SearchRoot = de
            src.SearchScope = SearchScope.Subtree
            'src.Filter = ("(objectclass=User)")

            For Each res As SearchResult In src.FindAll()
                Dim ien As System.Collections.IDictionaryEnumerator = res.Properties.GetEnumerator()
                Dim topRow As DataRow = ds.Tables("users").NewRow()
                topRow("cn") = res.Properties("cn")(0)
                ds.Tables("users").Rows.Add(topRow)
            Next
            DataGrid1.DataSource = ds.Tables("users")
            DataGrid1.DataBind()
        End Sub

#Region "Web Form Designer generated code"
        Protected Overloads Overrides Sub OnInit(ByVal e As EventArgs)

            InitializeComponent()
            MyBase.OnInit(e)
        End Sub

        Private Sub InitializeComponent()
            Me.de = New System.DirectoryServices.DirectoryEntry
            Me.ds = New System.Data.DataSet
            CType(Me.ds, System.ComponentModel.ISupportInitialize).BeginInit()

            Me.de.AuthenticationType = System.DirectoryServices.AuthenticationTypes.ServerBind
            Me.de.Path = "LDAP://xxxx:389/OU=xxx,DC=xxxxxxxx,DC=xxxx,DC=xxx"

            Me.ds.DataSetName = "NewDataSet"
            Me.ds.Locale = New System.Globalization.CultureInfo("en-US")
            CType(Me.ds, System.ComponentModel.ISupportInitialize).EndInit()

        End Sub

#End Region

    End Class
End Namespace
 

Neue Beiträge

Zurück