Maison > Article > développement back-end > Ensemble de données en C#
DataSet est une architecture déconnectée, elle représente les données dans une structure de table, ce qui signifie les données en lignes et colonnes. L'ensemble de données est la copie locale de votre base de données qui existe dans le système local et permet à l'application de s'exécuter plus rapidement et de manière fiable. DataSet fonctionne comme une véritable base de données avec un ensemble complet de données qui inclut les contraintes, les relations entre les tables, etc. Il se trouvera dans l’espace de noms « System. Données”.
Syntaxe :
La syntaxe de DataSet comme indiqué ci-dessous,
public class DataSet : System.ComponentModel.MarshalByValueComponent, IListSource, ISupportInitializeNotification, ISerializable, IXmlSerializable { }
DataSet est une collection de tables de données qui contiennent les données relationnelles dans une structure de table. Cela signifie le sous-ensemble de bases de données dans la gestion de la mémoire. Le DataSet est une architecture déconnectée qui ne nécessite pas de connexion active ou ouverte à la base de données. De cette façon, nous pouvons obtenir les données sans interagir avec aucune source de données en raison d'un environnement déconnecté. Il appartient à l'espace de noms System.Data. Comprenons la procédure de travail de DataSet en C# avec un exemple : nous créons deux tables de données, les tables Employé et Salaire, puis créons des colonnes de données pour ajouter les colonnes dans les tables et enfin créons des lignes de données pour ajouter des enregistrements dans les deux tables. Voyons le codage suivant ci-dessous,
Création des détails des employés DataTable
DataTable EmployeeDetails = new DataTable("EmployeeDetails"); //to create the column and schema DataColumn EmployeeID = new DataColumn("EmpID", typeof(Int32)); EmployeeDetails.Columns.Add(EmployeeID); DataColumn EmployeeName = new DataColumn("EmpName", typeof(string)); EmployeeDetails.Columns.Add(EmployeeName); DataColumn EmployeeMobile = new DataColumn("EmpMobile", typeof(string)); EmployeeDetails.Columns.Add(EmployeeMobile); //to add the Data rows into the EmployeeDetails table EmployeeDetails.Rows.Add(1001, "Andrew", "9000322579"); EmployeeDetails.Rows.Add(1002, "Briddan", "9081223457");
Pour la table des salaires, nous créons le DataTable avec le nom SalaryDetails avec les attributs SalaryID, EmployeeID, EmployeeName et Salary, ajoutons les colonnes aux tables des salaires, puis créons deux lignes de données et ajoutons ces lignes de données dans les tables des salaires.
Créez ensuite le DataTable SalaryDetails,
DataTable SalaryDetails = new DataTable("SalaryDetails"); //to create the column and schema DataColumn SalaryId = new DataColumn("SalaryID", typeof(Int32)); SalaryDetails.Columns.Add(SalaryId); DataColumn empId = new DataColumn("EmployeeID", typeof(Int32)); SalaryDetails.Columns.Add(empId); DataColumn empName = new DataColumn("EmployeeName", typeof(string)); SalaryDetails.Columns.Add(empName); DataColumn SalaryPaid = new DataColumn("Salary", typeof(Int32)); SalaryDetails.Columns.Add(SalaryPaid); //to add the Data rows into the SalaryDetails table SalaryDetails.Rows.Add(10001, 1001, "Andrew",42000); SalaryDetails.Rows.Add(10002, 1002, "Briddan",30000);
Pour créer le DataSet avec DataTable,
Comme nous avons discuté du DataSet avec la collection de DataTables, créez un objet pour DataSet, puis ajoutez deux tables de données (Employé et Salaire) dans le DataSet.
//to create the object for DataSet DataSet dataSet = new DataSet(); //Adding DataTables into DataSet dataSet.Tables.Add(EmployeeDetails); dataSet.Tables.Add(SalaryDetails); By using index position, we can fetch the DataTable from DataSet, here first we added the Employee table so the index position of this table is 0, let's see the following code below //retrieving the DataTable from dataset using the Index position foreach (DataRow row in dataSet.Tables[0].Rows) { Console.WriteLine(row["EmpID"] + ", " + row["EmpName"] + ", " + row["EmpMobile"]); } Then second table we added was SalaryDetails table which the index position was 1, now we fetching this second table by using the name, so we fetching the DataTable from DataSet using the name of the table name "SalaryDetails", //retrieving DataTable from the DataSet using name of the table foreach (DataRow row in dataSet.Tables["SalaryDetails"].Rows) { Console.WriteLine(row["SalaryID"] + ", " + row["EmployeeID"] + ", " + row["EmployeeName"] + ", " + row["Salary"]); }
DataSet en C# fournit quatre constructeurs, sont les suivants :
Dataset est la copie locale de votre base de données qui existe dans le système local et permet à l'application de s'exécuter plus rapidement et de manière fiable. DataSet fonctionne comme une véritable base de données avec un ensemble complet de données qui inclut les contraintes, les relations entre les tables, etc. DataSet est une architecture déconnectée, elle représente les données dans une structure de table, ce qui signifie les données en lignes et colonnes.
Voyons l'exemple par programme comme suit,
using System; using System.Collections.Generic; using System. Data; namespace Console_DataSet { class Program { static void Main(string[] args) { try { // building the EmployeeDetails table using DataTable DataTable EmployeeDetails = new DataTable("EmployeeDetails"); //to create the column and schema DataColumn EmployeeID = new DataColumn("EmpID", typeof(Int32)); EmployeeDetails.Columns.Add(EmployeeID); DataColumn EmployeeName = new DataColumn("EmpName", typeof(string)); EmployeeDetails.Columns.Add(EmployeeName); DataColumn EmployeeMobile = new DataColumn("EmpMobile", typeof(string)); EmployeeDetails.Columns.Add(EmployeeMobile); //to add the Data rows into the EmployeeDetails table EmployeeDetails.Rows.Add(1001, "Andrew", "9000322579"); EmployeeDetails.Rows.Add(1002, "Briddan", "9081223457"); // to create one more table SalaryDetails DataTable SalaryDetails = new DataTable("SalaryDetails"); //to create the column and schema DataColumn SalaryId = new DataColumn("SalaryID", typeof(Int32)); SalaryDetails.Columns.Add(SalaryId); DataColumn empId = new DataColumn("EmployeeID", typeof(Int32)); SalaryDetails.Columns.Add(empId); DataColumn empName = new DataColumn("EmployeeName", typeof(string)); SalaryDetails.Columns.Add(empName); DataColumn SalaryPaid = new DataColumn("Salary", typeof(Int32)); SalaryDetails.Columns.Add(SalaryPaid); //to add the Data rows into the SalaryDetails table SalaryDetails.Rows.Add(10001, 1001, "Andrew",42000); SalaryDetails.Rows.Add(10002, 1002, "Briddan",30000); //to create the object for DataSet DataSet dataSet = new DataSet(); //Adding DataTables into DataSet dataSet.Tables.Add(EmployeeDetails); dataSet.Tables.Add(SalaryDetails); Console.WriteLine("\n\n\tUSING DATASET"); Console.WriteLine("\n\nEmployeeDetails Table Data: \n"); //to reterieve the DataTable from dataset using the Index position foreach (DataRow row in dataSet.Tables[0].Rows) { Console.WriteLine(row["EmpID"] + ", " + row["EmpName"] + ", " + row["EmpMobile"]); } Console.WriteLine(); //SalaryDetails Table Console.WriteLine("\nOrderDetails Table Data: \n"); //retrieving DataTable from the DataSet using name of the table foreach (DataRow row in dataSet.Tables["SalaryDetails"].Rows) { Console.WriteLine(row["SalaryID"] + ", " + row["EmployeeID"] + ", " + row["EmployeeName"] + ", " + row["Salary"]); } } catch (Exception e) { Console.WriteLine("OOPS, Error.\n" + e); } Console.ReadKey(); } } }
Sortie :
Dans cet article, j'ai expliqué DataSet en C# qui est une architecture déconnectée qui permet de rendre l'utilisation de l'application plus rapide et fiable. J'espère que l'article vous aidera à comprendre le flux de travail de DataSet par programmation et théoriquement.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!