web-dev-qa-db-fra.com

c # colonne d'insertion datatable à la position 0

est-ce que quelqu'un sait la meilleure façon d'insérer une colonne dans un datatable à la position 0?

99
Grant

Vous pouvez utiliser le code suivant pour ajouter une colonne à Datatable à la position 0:

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

Juste pour améliorer la réponse de Wael et la mettre sur une seule ligne:

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

UPDATE: Notez que cela fonctionne quand vous n'avez rien d'autre à faire avec le DataColumn. Add () renvoie la colonne en question, SetOrdinal () ne renvoie rien.

85
CigarDoug
    //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
0
Farhad