Torna al Thread
// 1) ovviamente la condizione della select l'ho inventata!
DataRow[] dr = ds.Tables[0].Select("nome_agente='Carlo' or codice_agente='AG_392092'");
// 2) creo la mia nuova STRUTTURA di tabella (nessun dato)
DataTable dtCopy = ds.Tables["AGENTI"].Clone();
// 3) recupero i dati che ho filtrato
foreach (DataRow drw in dr)
{
// 3) Poichè la riga di array "appartiene2 già ad un'altra tabella, devo creare una nuova riga della mia nuova tabella
DataRow dr1 = dtCopy.NewRow();
// 4) Quindi, devo copiare i dati (la struttura ha già le stesse colonne) dalla vecchia alla nuova riga
dr1.ItemArray = drw.ItemArray;
// 5) aggiungo la riga alla mia nuova tabella
dtCopy.Rows.Add(dr1);
// ... e confermo l'inserimento
dtCopy.AcceptChanges();
}