Ajouter une méthode de recherche

Pour permettre au service Business Data Connectivity (BDC) d’afficher une liste d’entités dans un composant WebPart ou une liste, vous devez créer une méthode de recherche. Une méthode de recherche est une méthode spéciale qui retourne une collection d’instances d’entités. Pour plus d’informations, consultez Concevoir un modèle de connectivité de données métiers.

Pour créer une méthode de recherche

  1. Dans le Concepteur BDC, choisissez une entité.

    Pour plus d’informations, consultez Guide pratique pour ajouter une entité à un modèle.

  2. Dans la barre de menus, choisissez Affichage>Autres fenêtres>Détails de la méthode BDC.

    La fenêtre Détails de la méthode BDC s’ouvre. Pour plus d’informations sur la fenêtre Détails de la méthode BDC, consultez Vue d’ensemble des outils de conception de modèle BDC.

  3. Dans la liste Ajouter une méthode, choisissez Créer une méthode de recherche.

    Visual Studio ajoute une méthode, un paramètre de retour et un descripteur de type.

  4. Configurez le descripteur de type en tant que descripteur de type de collection d’entités. Pour plus d’informations sur la création d’un descripteur de type de collection d’entités, consultez Guide pratique pour définir le descripteur de type d’un paramètre.

    Notes

    Vous n’avez pas besoin d’effectuer cette étape si vous avez ajouté une méthode de recherche spécifique à l’entité. Visual Studio utilise le descripteur de type que vous avez défini dans la méthode de recherche spécifique.

  5. Dans l’Explorateur de solutions, ouvrez le menu contextuel du fichier de code de service généré pour l’entité, puis choisissez Afficher le code. Pour plus d’informations sur le fichier de code de service, consultez Créer un modèle de connectivité des données métiers.

  6. Ajoutez le code à la méthode de recherche. Ce code effectue les tâches suivantes :

    • Récupère les données d’une source de données.

    • Retourne une liste de contacts au service BDC.

      L’exemple suivant retourne une collection d’entités Contact à l’aide des données de l’exemple de base de données AdventureWorks pour SQL Server.

    Notes

    Remplacez la valeur du champ ServerName par le nom de votre serveur.

    public static IEnumerable<Contact> ReadList()
    {
        const string ServerName = "MySQLServerName";
        AdventureWorksDataContext dataContext = new AdventureWorksDataContext
              ("Data Source=" + ServerName + ";" +
               "Initial Catalog=AdventureWorks;Integrated Security=True");
    
        IEnumerable<Contact> Contacts =
            from contacts in dataContext.Contacts.Take(20)
            select contacts;
        return Contacts;
    
    }