Saber de nuestros Usuarios en el LDAP, con DataGrid desde Consulta integrada

 

‘Saber de los Usuarios en nuestro LDAP
Imports System.DirectoryServices        ‘Espacio de nombres Public Class Form1
    Private Datagrid As New DataGridView
    ‘Constructor para nuestro DataGridView
   
    ‘ Nuestra particular clase para definir un Usuario
    Private Class UserInfo
       
        ‘Leer/Asignar su nombre
        Private m_Nombre As String
        Public Property Nombre() As String
            Get
                Return m_Nombre
            End Get
            Set(ByVal value As String)
                m_Nombre = value
            End Set
        End Property
       
        ‘Leer/Asignar su Descripcion
        Private m_Descripcion As String

        Public Property Descripcion() As String
            Get
                Return m_Descripcion
            End Get
            Set(ByVal value As String)
                m_Descripcion = value
            End Set
        End Property
    End Class
   
    ‘ Al Cargar el Formulario
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        ‘Incorporar el DataGridView a nuestro form
        Me.Controls.Add(Datagrid)
        Me.Datagrid.Dock = DockStyle.Fill           ‘Ocupar toda el area del form
        Me.Datagrid.AllowUserToAddRows = False      ‘No se puede añadir celdas
        Me.Datagrid.AllowUserToDeleteRows = False   ‘No se puede eliminar celdas
        Me.Datagrid.EditMode = DataGridViewEditMode.EditProgrammatically
        ‘Nuestros apuntes en el directorio del Servidor
        Dim EntradasEnElDirectorio As New DirectoryEntry(LDAP://Servidor)
        ‘Nuestro buscador
        Dim BusquedaEnElDirectorio As New DirectorySearcher(EntradasEnElDirectorio)
      
 ‘Filtro de busqueda
        BusquedaEnElDirectorio.Filter = “(ObjectClass=user)”
    
   ‘Leer las entradas de usuario
        Dim Entradas = From usuario As SearchResult In BusquedaEnElDirectorio.FindAll() _
                       Select usuario.GetDirectoryEntry
        ‘Rellenar el DataGridView con el resultado de la consulta, con la info requerida
        Datagrid.DataSource = _
        (From usuario In Entradas _
        Select New UserInfo() With {.Nombre = usuario.Properties(“name”).Value, _
                                    .Descripcion = usuario.Properties(“description”).Value}).ToList
    End Sub
End Class 

 

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.