Partager via


Mettre à jour des données à l’aide d’un TableAdapter dans des applications .NET Framework

Remarque

La DataSet classe et les classes associées sont des technologies .NET Framework héritées du début des années 2000 qui permettent aux applications d’utiliser des données en mémoire pendant que les applications sont déconnectées de la base de données. Les technologies sont particulièrement utiles pour les applications qui permettent aux utilisateurs de modifier les données et de conserver les modifications apportées à la base de données. Bien que les jeux de données soient une technologie éprouvée, l’approche recommandée pour les nouvelles applications .NET consiste à utiliser Entity Framework Core. Entity Framework offre un moyen plus naturel d’utiliser des données tabulaires en tant que modèles objet et dispose d’une interface de programmation plus simple.

Une fois les données de votre jeu de données modifiées et validées, vous pouvez renvoyer les données mises à jour à une base de données en appelant la Update méthode d’un TableAdapter. La Update méthode met à jour une table de données unique et exécute la commande correcte (INSERT, UPDATEou DELETE) en fonction de chaque RowState ligne de données de la table. Lorsqu’un jeu de données a des tables associées, Visual Studio génère une classe TableAdapterManager que vous utilisez pour effectuer les mises à jour. La classe TableAdapterManager garantit que les mises à jour sont effectuées dans l’ordre correct en fonction des contraintes de clé étrangère définies dans la base de données. Lorsque vous utilisez des contrôles liés aux données, l’architecture de liaison de données crée une variable membre de la classe TableAdapterManager appelée tableAdapterManager.

Remarque

Lorsque vous essayez de mettre à jour une source de données avec le contenu d’un jeu de données, vous pouvez obtenir des erreurs. Pour éviter les erreurs, nous vous recommandons de placer le code qui appelle la méthode de Update l’adaptateur dans un try/catch bloc.

La procédure exacte de mise à jour d’une source de données peut varier en fonction des besoins de l’entreprise, mais inclut les étapes suivantes :

  1. Appelez la méthode de l’adaptateur Update dans un try/catch bloc.

  2. Si une exception est interceptée, recherchez la ligne de données qui a provoqué l’erreur.

  3. Rapprochez le problème dans la ligne de données (par programme, si vous le pouvez, ou en présentant la ligne non valide à l’utilisateur pour modification), puis réessayez la mise à jour (HasErrors, GetErrors).

Enregistrer des données dans une base de données

Appelez la Update méthode d’un TableAdapter. Transmettez le nom de la table de données qui contient les valeurs à écrire dans la base de données.

Pour mettre à jour une base de données à l’aide d’un TableAdapter

  • Placez la méthode de Update TableAdapter dans un try/catch bloc. L’exemple suivant montre comment mettre à jour le contenu de la table Customers dans un bloc NorthwindDataSettry/catch.

    try
    {
        this.Validate();
        this.customersBindingSource.EndEdit();
        this.customersTableAdapter.Update(this.northwindDataSet.Customers);
        MessageBox.Show("Update successful");
    }
    catch (System.Exception ex)
    {
        MessageBox.Show("Update failed");
    }