2009-08-27 9 views
83

qualcuno sa il modo migliore per inserire una colonna in un datatable in posizione 0?C# colonna inseribile databile in posizione 0

+0

Perché vuoi farlo? L'ordine delle colonne non dovrebbe in realtà essere rilevante. –

+1

a volte se si aggiunge una colonna al datatable dopo aver ottenuto i dati da db potrebbe essere necessario impostarlo all'inizio. –

+1

im plicando il datatable in un bulk block – Grant

risposta

141

È possibile utilizzare il seguente codice per aggiungere colonna Datatable a postion 0:

DataColumn Col = datatable.Columns.Add("Column Name", System.Type.GetType("System.Boolean")); 
    Col.SetOrdinal(0);// to put the column in position 0; 
69

solo per migliorare la risposta di Wael e metterlo su una sola riga:

dt.Columns.Add("Better", typeof(Boolean)).SetOrdinal(0); 

UPDATE: Si noti che questo funziona quando non devi fare nient'altro con DataColumn. Aggiungi() restituisce la colonna in questione, SetOrdinal() non restituisce nulla.

+10

la dichiarazione di single ligne non è sempre migliore. In questo caso mi piace +1 –

-1
//Example to define how to do : 

    DataTable dt = new DataTable(); 

    dt.Columns.Add("ID"); 
    dt.Columns.Add("FirstName"); 
    dt.Columns.Add("LastName"); 
    dt.Columns.Add("Address"); 
    dt.Columns.Add("City"); 
      // The table structure is: 
      //ID FirstName LastName Address  City 

     //Now we want to add a PhoneNo column after the LastName column. For this we use the        
      //SetOrdinal function, as iin: 
     dt.Columns.Add("PhoneNo").SetOrdinal(3); 

      //3 is the position number and positions start from 0.`enter code here` 

       //Now the table structure will be: 
       // ID  FirstName LastName LastName PhoneNo  Address  City 
Problemi correlati