come impostare il nome della colonna in DataTable

Sto prendendo dati di Excel in DataTable ma sta prendendo il nome di colonna di Excel come prima riga di dati in DataTable. Quindi aiutami a impostare la prima riga di Excel come colonne in DataTable. PS: sto usando lo spazio dei nomi Microsoft.Offfice.Interop.Excel e System.Data.DataTable Questo è il mio codice:

connExcel.Open(); cmdExcel.CommandText = "SELECT * From [" + SheetName + "]"; oda.SelectCommand = cmdExcel; new System.Data.OleDb.OleDbDataAdapter(cmdExcel).Fill(dt); connExcel.Close(); 

Sto ottenendo tutti i dati del foglio Excel specificato in DataTable dt ma sta prendendo i nomi delle colonne di Excel come prima riga di dati in Datatable

Per cambiare il nome di una colonna, usa ColumnName .

 DataTable table = new DataTable(); table.Columns.Add("A", typeof(int)); table.Columns.Add("B", typeof(string)); table.Columns[0].ColumnName = "Column A"; table.Columns[1].ColumnName = "Column B"; table.Rows.Add(99, "test row"); 

Ehi, puoi fare quanto segue, disabiliterà il prendere l’intestazione dalla cartella di lavoro di Excel:

  conn = New System.Data.OleDb.OleDbConnection( "provider=Microsoft.ACE.OLEDB.12.0; " & "data source=" & path & "; " & "Extended Properties=""Excel 12.0;HDR=No;IMEX=1""") 

Modificare l’HDR su No nella stringa di connessione

 DataTable tab = new DataTable(); for (int i = 0; i < tab.Columns.Count; i++) { tab.Columns[i].Caption = "example" }