Saber de nuestros Usuarios en LDAP, Rerellando un GridView desde una Consulta.

LDAP

‘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 

0 pensamientos en “Saber de nuestros Usuarios en LDAP, Rerellando un GridView desde una Consulta.”

  1. Hola Fran!!
    Mira el ultimo post, en la enumeracion puedes obtener el nombre de las propiedades diponibles para el LDAP consultado.

    Un abrazo,
    Pep Lluis,

  2. 1- si no saben hacer las cosas mejor no las publiquen y punto, igual esto me dejo sin saber nada.
    2- si vamos a explicar algo diay tengamos la paciencia y expliquemos bien

  3. Saludos Jose,
    Lamento tu disgusto. Solo explicarte la justificacion de que cada cosa publicada no representa un articulo concreto sobre un tema, si no que intenta ayudar desinteresadamente a personas que en un momento dado me muestran su inquietud sobre alguna tecnologia en concreto. En este caso el apunte va dirigido a profesionales que utilizan o administran active directory.
    Lamento el mal entendido. Y no dudes en contactar de nuevo si consideras interesante o necesitas alguna aclaracion sobre el tema.

    Recibe un respetuoso apreton de manos,
    Pep Lluis,

  4. peplluis necesito usar una funcion en ASP clasico que me permita identificar al usuario que está accediendo a una página desde la intranet de la empresa, ¿me puedes ayudar con eso?

  5. Hola Josue,
    Pues en principio deberias importar el «System.DirectoryServices» y el ejemplo anterior deberia funcionar. Aunque no me he podido entretener a probarlo.

    Espero tus noticias,
    Si necesitas continuar la conversacion,te agradecere lo postees en mis foros «http://savecomm.net/boards/forumgroup/3/desarrollo-de-aplicaciones» o los de MSDN.
    Gracias!

Responder a Jose Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *