2017-07-15 5 views
1

Ich möchte einige Spalten aus Datentabelle nehmen und dann in eine andere Datentabelle kopieren. Ist das möglich? Zum Beispiel; Ich möchte ID und Name Spalte und ihre Zeilenwerte nehmen.Wie nehmen Sie Spalten mit Werten nach Spaltennamen?

 DataTable table = new DataTable(); 
     table.Columns.Add("ID"); 
     table.Columns.Add("Name"); 
     table.Columns.Add("Surname"); 
     table.Rows.Add("1", "Mike","Zt"); 
     table.Rows.Add("2", "Richard", "Milko"); 
     table.Rows.Add("3", "Sumo", "Sansimo"); 

Antwort

1

Es ist eine wirklich einfache Art und Weise zu tun, was Sie

DataTable table = new DataTable(); 
table.Columns.Add("ID"); 
table.Columns.Add("Name"); 
table.Columns.Add("Surname"); 
table.Rows.Add("1", "Mike","Zt"); 
table.Rows.Add("2", "Richard", "Milko"); 
table.Rows.Add("3", "Sumo", "Sansimo"); 

DataTable newTable = table.DefaultView.ToTable(false, new string[] {"ID", "Name"}); 
foreach(DataRow r in newTable.Rows) 
     Console.WriteLine("ID=" + r.Field<string>("ID") + ", Name=" + r.Field<string>("Name")); 
+0

Ich bin froh, Ihnen helfen zu können. Wenn Sie die Antworten auf Ihre Frage nützlich finden, können Sie überlegen, ob Sie sie auffrischen möchten und den akzeptierten auswählen. Bitte lesen Sie [Wie funktioniert die Annahme einer Antwort?] (Https://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work#duplicate=0) – Steve

0

Edit1 fragen:

Kopieren Sie die Spalten (ID, Name) und ihre Reihen von Daten von einem Datatable (Tabelle) zu einer anderen DataTable (Tabelle2).

// create new table to which you want copy the first table 
DataTable table2 = new DataTable(); 

// now copy the columns (ID,Name) from table to table2 
foreach (DataColumn column in table.Columns) 
{ 
    if(column.ColumnName == "ID" || column.ColumnName == "Name") 
     table2.Columns.Add(column.ColumnName); 
} 

// copy the all data of columns (ID,Name) from table to table2 
foreach (DataRow row in table.Rows) 
{ 
    // initialize the new row for your data 
    List<string> rowData = new List<string>(); 

    // add your columns (ID,Name) data to the new row 
    foreach (DataColumn column in table.Columns) 
    { 
     if(column.ColumnName == "ID" || column.ColumnName == "Name") 
      rowData.Add(row[column.ColumnName].ToString()); 
    } 

    // add the data row to the new DataTable (table2) 
    table2.Rows.Add(rowData); 
} 
+0

@ user3086855 Ich habe meine Antwort bearbeitet – AsifAli72090

+0

Danke für die nette Antwort – user3086855

Verwandte Themen