Partager via


DataSet ADO.NET

L'objet DataSet est au centre de la prise en charge de scénarios impliquant des données déconnectées et distribuées avec ADO.NET. Le DataSet est une représentation de données résidente en mémoire qui propose un modèle de programmation relationnel cohérent quelle que soit la source de données. Il peut être utilisé avec plusieurs sources de données différentes, utilisé avec des données XML ou utilisé pour gérer des données locales de l'application. Le DataSet représente un jeu de données complet, qui comprend des tables connexes, des contraintes et des relations entre les tables. L'illustration suivante montre le modèle d'objet DataSet.

Modèle d'objet DataSet

Les méthodes et objets contenus dans un DataSet sont cohérents avec ceux du modèle de base de données relationnelle.

Le DataSet peut également persister et recharger son contenu en tant que XML et son schéma en tant que schéma en langage XSD (XML Schema Definition).

DataTableCollection

Un objet DataSet ADO.NET contient une collection de zéro ou plusieurs tables représentées par des objets DataTable. Le DataTableCollection contient tous les objets DataTable d'un DataSet.

Un DataTable est défini dans l'espace de noms System.Data et représente une seule table de données résidentes en mémoire. Il contient une collection de colonnes, représentées par un DataColumnCollection, et des contraintes représentées par un ConstraintCollection, qui ensemble définissent le schéma de la table. Un DataTable contient également une collection de lignes représentées par le DataRowCollection, qui contient les données de la table. En plus de son état actuel, un DataRow conserve ses versions d'origine et actuelle afin de permettre l'identification des modifications apportées aux valeurs stockées dans la ligne.

DataRelationCollection

Un DataSet contient des relations dans son objet DataRelationCollection. Une relation, représentée par l'objet DataRelation, associe les lignes d'un DataTable avec les lignes d'un autre DataTable. Elle est similaire à une jointure qui peut exister entre les colonnes clé primaire et étrangère dans une base de données relationnelle. Un DataRelation identifie les colonnes identiques dans deux tables d'un DataSet.

Les relations permettent la navigation entre une table et une autre au sein d'un DataSet. Les éléments essentiels d'un DataRelation sont le nom de la relation, le nom des tables mises en relation et les colonnes connexes dans chaque table. Une relation peut être générée avec plusieurs colonnes par table en spécifiant un tableau d'objets DataColumn en tant que colonnes clés. Lorsqu'une relation est ajoutée au DataRelationCollection, elle peut éventuellement ajouter un UniqueKeyConstraint et un ForeignKeyConstraint pour appliquer l'intégrité lorsque des modifications sont apportées aux valeurs de colonnes connexes.

ExtendedProperties

Le DataSet (ainsi que le DataTable et le DataColumn) est assorti d'une propriété ExtendedProperties. ExtendedProperties est un PropertyCollection dans lequel vous pouvez placer des informations personnalisées, comme l'instruction SELECT qui a été utilisée pour générer le jeu de résultats, ou la date et l'heure auxquelles les données ont été générées. La collection ExtendedProperties est rendue persistante avec les informations de schéma du DataSet (comme le DataTable et le DataColumn).

Voir aussi

Vue d'ensemble de ADO.NET | Architecture ADO.NET | DataColumn, classe | DataColumnCollection, classe | DataRelation, classe | DataRelationCollection, classe | DataRowCollection, classe | DataSet, classe | DataTable, classe | DataTableCollection, classe | PropertyCollection, classe