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
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.
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.
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.
Ouvrez la fenêtre Propriétés de Visual Studio.
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.
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.
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).
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.
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