c# add - Comment créer un DataTable en C # et comment ajouter des lignes?




6 Answers

Voici le code:

DataTable dt = new DataTable(); 
dt.Clear();
dt.Columns.Add("Name");
dt.Columns.Add("Marks");
DataRow _ravi = dt.NewRow();
_ravi["Name"] = "ravi";
_ravi["Marks"] = "500";
dt.Rows.Add(_ravi);

Pour voir la structure, ou plutôt je la reformulerais en schéma, vous pouvez l'exporter vers un fichier XML en procédant comme suit.

Pour exporter uniquement le schéma / la structure, faites:

dt.WriteXMLSchema("dtSchemaOrStructure.xml");

De plus, vous pouvez également exporter vos données:

dt.WriteXML("dtDataxml");
row object

Comment créer un DataTable en C #?

J'ai fait comme ça:

 DataTable dt = new DataTable();
 dt.clear();
 dt.Columns.Add("Name");
 dt.Columns.Add("Marks");

Comment puis-je voir la structure de DataTable?

Maintenant, je veux ajouter ravi pour le Name et 500 pour les Marks . Comment puis-je faire ceci?




// Create a DataTable and add two Columns to it
DataTable dt=new DataTable();
dt.Columns.Add("Name",typeof(string));
dt.Columns.Add("Age",typeof(int));

// Create a DataRow, add Name and Age data, and add to the DataTable
DataRow dr=dt.NewRow();
dr["Name"]="Mohammad"; // or dr[0]="Mohammad";
dr["Age"]=24; // or dr[1]=24;
dt.Rows.Add(dr);

// Create another DataRow, add Name and Age data, and add to the DataTable
dr=dt.NewRow();
dr["Name"]="Shahnawaz"; // or dr[0]="Shahnawaz";
dr["Age"]=24; // or dr[1]=24;
dt.Rows.Add(dr);

// DataBind to your UI control, if necessary (a GridView, in this example)
GridView1.DataSource=dt;
GridView1.DataBind();



Vous pouvez écrire une ligne en utilisant DataRow.Add (valeurs de l'objet params []) au lieu de quatre lignes.

dt.Rows.Add("Ravi", "500");

Comme vous créez un nouvel objet DataTable , il ne semble pas nécessaire d' Clear DataTable dans l'instruction suivante. Vous pouvez également utiliser DataTable.Columns.AddRange pour ajouter des colonnes avec une instruction on. Le code complet serait.

DataTable dt = new DataTable();
dt.Columns.AddRange(new DataColumn[] { new DataColumn("Name"), new DataColumn("Marks") });     
dt.Rows.Add("Ravi", "500");



Vous devez ajouter des datarows à votre datatable pour cela.

// Creates a new DataRow with the same schema as the table.
DataRow dr = dt.NewRow();

// Fill the values
dr["Name"] = "Name";
dr["Marks"] = "Marks";

// Add the row to the rows collection
dt.Rows.Add ( dr );



Le plus simple est de créer un DtaTable dès maintenant

DataTable table = new DataTable
{
    Columns = {
        "Name", // typeof(string) is implied
        {"Marks", typeof(int)}
    },
    TableName = "MarksTable" //optional
};
table.Rows.Add("ravi", 500);



En plus des autres réponses.

Si vous contrôlez la structure de DataTable, il existe un raccourci pour l'ajout de lignes:

// Supposons que vous avez une table de données définie comme dans votre exemple nommé dt dt.Rows.Add ("Name", "Marks");

La méthode DataRowCollection.Add () a une surcharge qui prend un tableau param d'objets. Cette méthode vous permet de transmettre autant de valeurs que nécessaire, mais elles doivent être dans le même ordre que les colonnes définies dans la table.

Donc, bien que ce soit un moyen pratique d'ajouter des données de ligne, il peut être risqué d'utiliser. Si la structure de la table change votre code échouera.




Related

c# ado.net datatable