Compartir a través de


Cómo: Agregar un método Finder específico

Puede devolver una instancia de entidad única creando un método Finder específico.El servicio de (BDC) de conectividad a datos profesionales ejecuta el método Finder específico cuando un usuario elige una entidad en una lista web del elemento o externa de datos profesionales.Para obtener más información, vea Diseñar un modelo de conectividad a datos profesionales.

Para crear un método Finder específico

  1. En el diseñador de BDC, elija una entidad.

    Para obtener información sobre cómo agregar una entidad al diseñador de BDC en Visual Studio, vea Cómo: Agregar una entidad a un modelo.

  2. En la barra de menú, elija Ver, Otras ventanas, Detalles del método de BDC.

    Se abre la ventana Detalles del método de BDC.Para obtener más información sobre la ventana, vea Introducción general a las herramientas de diseño del modelo BDC.

  3. En la lista de Agregar un método , elija Crear método Finder específico.

    Visual Studio agrega los siguientes elementos al modelo.Estos elementos aparecen en la ventana Detalles del método de BDC.

    • Un método

    • Un parámetro de entrada para el método.

    • Un parámetro devuelto para el método.

    • Un descriptor de tipo para cada parámetro.

    • Una instancia de método para el método.

    Para obtener más información, vea Diseñar un modelo de conectividad a datos profesionales.

  4. Abra la ventana Propiedades de Visual Studio.

  5. Configure el descriptor de tipos del parámetro devuelto como un descriptor de tipos de entidades.Para obtener información sobre cómo crear un descriptor de tipo de entidad, vea Cómo: Definir el descriptor de tipo de un parámetro.

    [!NOTA]

    No tiene que seguir este paso si ha agregado un método Finder a la entidad.Visual Studio utiliza el descriptor de tipos que definió en el método Finder.

    [!NOTA]

    Si el campo de identificador del tipo de entidad representa un campo de una tabla de base de datos que se genera automáticamente, establezca la propiedad de Sólo lectura del campo de identificador en True.

  6. En la ventana de Detalles del método , elija la instancia de método del método.

  7. En la ventana Propiedades, establezca la propiedad Nombre del parámetro de devolución en el nombre del parámetro devuelto del método.Para obtener más información sobre las propiedades de las instancias de método, vea MethodInstance.

  8. En Explorador de soluciones, abra el menú contextual del archivo de código de servicio generado para la entidad y, a continuación Ver código.

    El archivo de código del servicio de entidad se abre en el editor de código.Para obtener más información sobre el archivo de código del servicio de entidad, vea Crea un modelo de conectividad a datos profesionales.

  9. Agregue código al método Finder específico.Este código realiza las tareas siguientes:

    • Recupera un registro de un origen de datos.

    • Devuelve una entidad al servicio BDC.

    En el siguiente ejemplo se devuelve un contacto de la base de datos de ejemplo AdventureWorks para SQL Server.

    [!NOTA]

    Reemplace el valor del campo ServerName con el nombre del servidor.

    Public Shared Function ReadItem(ByVal contactID As Integer) As Contact
        Const ServerName As String = "MySQLServerName"
        Dim dataContext As AdventureWorksDataContext = _
            New AdventureWorksDataContext("Data Source=" & ServerName & _
                ";Initial Catalog=AdventureWorks;Integrated Security=True")
    
        Dim Contact As Contact = _
            (From TempContacts In dataContext.Contacts.AsEnumerable().Take(20) _
            Where TempContacts.ContactID = contactID _
            Select TempContacts).[Single]()
        Return Contact
    End Function
    
    public static Contact ReadItem(int contactID)
    {
        const string ServerName = "MySQLServerName";
        AdventureWorksDataContext dataContext = new AdventureWorksDataContext
              ("Data Source=" + ServerName + ";" +
               "Initial Catalog=AdventureWorks;Integrated Security=True");
    
        Contact Contact =
            (from contacts in dataContext.Contacts.AsEnumerable().Take(20)
             where contacts.ContactID == contactID
             select contacts).Single();
        return Contact;
    }
    

Vea también

Tareas

Cómo: Agregar un método Finder

Cómo: Agregar un método Creator

Cómo: Agregar un método Deleter

Cómo: Agregar un método Updater

Cómo: Agregar un parámetro a un método

Cómo: Definir la instancia de un método

Conceptos

Introducción general a las herramientas de diseño del modelo BDC

Otros recursos

Diseñar un modelo de conectividad a datos profesionales