Partager via


Ajouter une méthode de mise à jour

Vous pouvez permettre aux utilisateurs de mettre à jour les données métier dans une liste externe SharePoint en créant une méthode de mise à jour . Pour plus d’informations, consultez Concevoir un modèle Business Data Connectivity.

Créer une méthode de mise à jour

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

  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 cette fenêtre, 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 mise à jour.

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

    • Méthode nommée Mise à jour.

    • Un paramètre d’entrée pour la méthode.

    • Un descripteur de type pour le paramètre. Par défaut, Visual Studio utilise le descripteur de type d’entité que vous avez défini pour la méthode Finder (par exemple : Contact).

    • Une instance de méthode pour la méthode.

      Pour plus d’informations, consultez Concevoir un modèle Business Data Connectivity.

    Notes

    Si l’identificateur du type d’entité représente un champ dans une table de base de données qui n’est pas générée automatiquement, définissez la propriété Champ de pré-mise à jour sur True.

  4. 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.

    Le fichier de code du service d’entité s’ouvre dans l’Éditeur de code. Pour plus d’informations sur ce fichier, consultez Créer un modèle de connectivité des données métiers.

  5. Ajoutez du code à la méthode de mise à jour pour mettre à jour les données. L’exemple suivant met à jour les informations d’un contact dans 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 void Update(Contact contact)
    {
        const string ServerName = "MySQLServerName";
        AdventureWorksDataContext dataContext = new AdventureWorksDataContext
              ("Data Source=" + ServerName + ";" +
               "Initial Catalog=AdventureWorks;Integrated Security=True");
       
        var contactToUpdate = (from contacts in dataContext.Contacts
                                where contacts.ContactID == contact.ContactID
                                select contacts).Single();
    
        contactToUpdate.FirstName = contact.FirstName;
        contactToUpdate.LastName = contact.LastName;
        contactToUpdate.EmailAddress = contact.EmailAddress;
        contactToUpdate.Phone = contact.Phone;
        contactToUpdate.EmailPromotion = contact.EmailPromotion;
        contactToUpdate.NameStyle = contact.NameStyle;
        contactToUpdate.PasswordHash = contact.PasswordHash;
        contactToUpdate.PasswordSalt = contact.PasswordSalt;
        contactToUpdate.ModifiedDate = DateTime.Now;
        contactToUpdate.rowguid = Guid.NewGuid();
        dataContext.SubmitChanges();
    
    }