2010-08-10 12 views
11

ho un DataTable con 12 columns.now ho bisogno di rimuovere tutte le colonne tranne che nella posizione "0"Come rimuovere colonna DataTable in C#

posso rimuovere singolarmente specificando il nome colonne. ma non voglio farlo. Non è il modo migliore di codificare.

c'è qualche altro posso farlo

grazie

+0

Sei collegato? – PostMan

+0

possibile duplicato: https://stackoverflow.com/questions/75123/remove-columns-from-datatable-in-c-sharp –

+0

possibile duplicato: https://stackoverflow.com/questions/75123/remove-columns-da -datatable-in-c-sharp –

risposta

19

tornare indietro attraverso le colonne e rimuovere ciascuno. Devi andare indietro per evitare un indice fuori dall'eccezione.

// index should include zero 
for(int index=table.Columns.Count-1; index>=0; index--) 
{ 
    table.Columns.RemoveAt(index); 
} 

VB.Net Lovers:

'index should include zero 
For index As Integer = table.Columns.Count - 1 To 0 Step -1 
    table.Columns.RemoveAt(index) 
Next 
+0

grazie Jerod Houghtelling, la tua soluzione ha funzionato benissimo – happysmile

5
while(myDataTable.Columns.Count > 1) 
{ 
    myDataTable.Columns.RemoveAt(myDataTable.Columns.Count - 1); 
} 
0

il codice è possibile abbattere le colonne da un oggetto tabella di dati. Quello che fa il mio codice è che passa in rassegna gli oggetti della tabella Dati e quindi rimuove le colonne una per una.

String strcolname = ""; 
    int i=0; 
    //Get Data for the reader object 
    using (reader = cmd.ExecuteReader()) 
    { 
    // Load the Data table object 
    dataTable.Load(reader); 

    //Loop thorough the DataTable object 
    for (i=dataTable.Columns.Count-1;i>=0;i--) 
    { 

    /* 
    To be more precise , specify the column name you dont want to get deleted, 
    (you can add multilple column names here)*/ 

    strcolname = dataTable.Columns[i].ColumnName.ToString(); 

    if (strcolname != "ABCD") 
    { 
     dataTable.Columns.RemoveAt(i); 
    } 
    }  
    } 
+0

Con il codice sopra puoi togliere le colonne da un oggetto Datatable. Quello che fa il mio codice è il loop degli oggetti Datatable e quindi rimuovere le colonne una alla volta. –

+0

spero che sia d'aiuto, se hai altre domande non esitare a contattarmi. –

Problemi correlati