Partager via


Comment : ajouter une méthode de recherche spécifique

Vous pouvez retourner une seule instance d'entité en créant une méthode de recherche spécifique. Le service de connectivité de données métiers (BDC, Business Data Connectivity) exécute la méthode de recherche spécifique lorsqu'un utilisateur sélectionne une entité dans un composant WebPart de données métiers ou une liste externe. Pour plus d'informations, consultez Conception d'un modèle de connectivité de données métiers.

Pour créer une méthode de recherche spécifique

  1. Dans le concepteur BDC, sélectionnez une entité. Pour plus d'informations sur l'ajout d'une entité au concepteur BDC dans Visual Studio, consultez Comment : ajouter une entité à un modèle.

  2. Dans le menu Affichage, cliquez sur Autres fenêtres, puis sur Détails de méthode BDC.

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

  3. Dans la fenêtre Détails de méthode BDC, dans la liste déroulante Ajouter une méthode, sélectionnez Créer une méthode de recherche spécifique.

    Visual Studio ajoute les éléments suivants au modèle. Ces éléments apparaissent dans la fenêtre Détails de méthode BDC.

    • Méthode

    • Paramètre d'entrée pour la méthode

    • Paramètre de retour pour la méthode

    • Descripteur de type pour chaque paramètre

    • Instance de méthode pour la méthode

    Pour plus d'informations, consultez Conception d'un modèle de connectivité de données métiers.

  4. Ouvrez la fenêtre Propriétés de Visual Studio.

  5. Configurez le descripteur de type du paramètre de retour en tant que descripteur de type entité. Pour plus d'informations sur la création d'un descripteur de type entité, consultez Comment : définir le descripteur de type d'un paramètre.

    Notes

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

    Notes

    Si le champ d'identificateur du type d'entité représente un champ d'une table de base de données générée automatiquement, affectez à la propriété Lecture seule du champ d'identificateur la valeur True.

  6. Dans la fenêtre Détails de méthode, sélectionnez l'instance de méthode de la méthode.

    Par défaut, Visual Studio nomme cette méthode MethodInstance1.

  7. Dans Fenêtre Propriétés, affectez le nom du paramètre de retour de la méthode à la propriété Nom du paramètre de retour. Pour plus d'informations sur les propriétés d'instance de méthode, consultez MethodInstance (page éventuellement en anglais).

  8. Dans l'Explorateur de solutions, cliquez avec le bouton droit sur le fichier de code de service qui a été généré pour l'entité, puis cliquez sur Afficher le code.

    Le fichier de code de service de l'entité s'ouvre dans l'éditeur de code. Pour plus d'informations sur le fichier de code de service de l'entité, consultez Création d'un modèle de connectivité de données métiers.

  9. Ajoutez du code à la méthode de recherche spécifique. Ce code exécute les tâches suivantes :

    • Il récupère un enregistrement à partir d'une source de données.

    • Il retourne une entité au service BDC.

    L'exemple suivant retourne un contact à partir 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 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;
    }
    

Voir aussi

Tâches

Comment : ajouter une méthode de recherche

Comment : ajouter une méthode de création

Comment : ajouter une méthode de suppression

Comment : ajouter une méthode de mise à jour

Comment : ajouter un paramètre à une méthode

Comment : définir une instance de méthode

Concepts

Vue d'ensemble des outils de conception du modèle BDC

Autres ressources

Conception d'un modèle de connectivité de données métiers