Comment puis-je copier des lignes spécifiques de DataTable vers une autre firebase database dans c #? Il y aura plus d’une rangée.
foreach (DataRow dr in dataTable1.Rows) { if (/* some condition */) dataTable2.Rows.Add(dr.ItemArray); }
L’exemple ci-dessus suppose que dataTable1
et dataTable2
ont le même nombre, le même type et le même ordre de colonnes.
Copier les lignes spécifiées de la table vers une autre
// here dttablenew is a new Table and dttableOld is table Which having the data dttableNew = dttableOld.Clone(); foreach (DataRow drtableOld in dttableOld.Rows) { if (/*put some Condition */) { dtTableNew.ImportRow(drtableOld); } }
Essaye ça
Ssortingng matchSsortingng="ID0001"//assuming we have to find rows having key=ID0001 DataTable dtTarget = new DataTable(); dtTarget = dtSource.Clone(); DataRow[] rowsToCopy; rowsToCopy = dtSource.Select("key='" + matchSsortingng + "'"); foreach (DataRow temp in rowsToCopy) { dtTarget.ImportRow(temp); }
Vérifiez ceci, vous pouvez l’aimer (auparavant, s’il vous plaît, clone la table1 à la table2):
table1.AsEnumerable().Take(recodCount).CopyToDataTable(table2,LoadOption.OverwriteChanges);
Ou:
table1.AsEnumerable().Where ( yourcondition ) .CopyToDataTable(table2,LoadOption.OverwriteChanges);
Pris en charge dans: 4, 3.5 SP1, vous pouvez maintenant simplement appeler une méthode sur l’object.
DataTable dataTable2 = dataTable1.Copy()
À la suite des autres messages, c’est le plus court possible:
DataTable destTable = sourceTable.Clone(); sourceTable.AsEnumerable().Where(row => /* condition */ ).ToList().ForEach(row => destTable.ImportRow(row));
l’échantillon ci-dessous serait le moyen le plus rapide de copier une ligne. chaque cellule est copiée en fonction du nom de la colonne. Si vous n’avez pas besoin d’une cellule spécifique à copier, essayez-la ou ajoutez-la. Si vous allez copier plus d’une ligne, bouclez le code ci-dessous.
DataRow dr = dataset1.Tables[0].NewRow(); for (int i = 0; i < dataset1.Tables[1].Columns.Count; i++) { dr[dataset1.Tables[1].Columns[i].ColumnName] = dataset1.Tables[1].Rows[0][i]; } datasetReport.Tables[0].Rows.Add(dr);
dataset1.Tables [1] .Rows [ 0 ] [i]; changer l'index 0 à votre index de ligne spécifié ou vous pouvez utiliser une variable si vous allez en boucle ou si elle va être logique
private void CopyDataTable(DataTable table){ // Create an object variable for the copy. DataTable copyDataTable; copyDataTable = table.Copy(); // Insert code to work with the copy. }