Bagaimana cara mengubah Nama Kolom DataTable?


118

Saya memiliki satu DataTable yang memiliki empat kolom seperti

 StudentID        CourseID          SubjectCode            Marks    
------------     ----------        -------------          --------
    1               100              MT400                  80
    2               100              MT400                  79
    3               100              MT400                  88

Di sini saya memasukkan Datatable ini ke dalam tabel server Sql dengan melewatkan datatable ini sebagai Tabel XML.

Saya hanya ingin Mengubah Nama Kolom DataTable "Marks" sebagai "SubjectMarks" dan meneruskan DataTable ini sebagai Tabel XML.

Saya tahu cara melewatkan DataTable sebagai Tabel XML. Tapi saya tidak tahu, Bagaimana cara mengubah Nama Kolom DataTable "Marks" sebagai "SubjectMarks".

Jawaban:


251

Coba ini:

dataTable.Columns["Marks"].ColumnName = "SubjectMarks";

1
Hai, Saya mencoba solusi ini tetapi entah bagaimana data saya hilang ketika saya mengubah nama kolom.
Bat_Programmer

2
Saya baru saja mencoba solusi ini sekarang dan berfungsi dengan baik - tidak melakukan perubahan apa pun atau menghapus data kolom yang mendasarinya. Mungkin ada hal lain yang terjadi di kode Anda ...
AshesToAshes

1
bagaimana jika nama asli 'Marks' dapat mengandung spasi?
lawphotog

27

Ubah nama Kolom dengan melakukan hal berikut:

dataTable.Columns["ColumnName"].ColumnName = "newColumnName";

7
 dtTempColumn.Columns["EXCELCOLUMNS"].ColumnName = "COLUMN_NAME";                        
 dtTempColumn.AcceptChanges();

Apa yang dilakukan kode tambahan Anda di sini? Menambahkan komentar akan membantu.
nawfal

1

setelah membuat XML Anda bisa langsung mengganti XML <Marks>... content here </Marks>tag Anda dengan <SubjectMarks>... content here </SubjectMarks>tag. dan meneruskan XML yang diperbarui ke DB Anda.

Edit: Saya di sini menjelaskan proses lengkapnya di sini.

XML Hasilkan Anda Seperti di bawah ini.

<NewDataSet>
      <StudentMarks> 
          <StudentID>1</StudentID>
          <CourseID>100</CourseID>
          <SubjectCode>MT400</SubjectCode>
          <Marks>80</Marks>
      </StudentMarks>
      <StudentMarks> 
          <StudentID>1</StudentID>
          <CourseID>100</CourseID>
          <SubjectCode>MT400</SubjectCode>
          <Marks>79</Marks>
      </StudentMarks>
      <StudentMarks> 
          <StudentID>1</StudentID>
          <CourseID>100</CourseID>
          <SubjectCode>MT400</SubjectCode>
          <Marks>88</Marks>
      </StudentMarks>
  </NewDataSet>

Di sini Anda dapat menetapkan XML ke variabel string seperti

string strXML = DataSet.GetXML();

strXML = strXML.Replace ("<Marks>","<SubjectMarks>");
strXML = strXML.Replace ("<Marks/>","<SubjectMarks/>");

dan sekarang berikan strXML ke DB Anda. Semoga ini bisa membantu Anda.


1

coba ini

"columns": [
{data: "id", name: "aaa", sortable: false},
{data: "userid", name: "userid", sortable: false},
{data: "group_id", name: "group_id", sortable: false},
{data: "group_name", name: "group_name", sortable: false},
{data: "group_member", name: "group_member"},
{data: "group_fee", name: "group_fee"},
{data: "dynamic_type", name: "dynamic_type"},
{data: "dynamic_id", name: "dynamic_id"},
{data: "content", name: "content", sortable: false},
{data: "images", name: "images", sortable: false},
{data: "money", name: "money"},
{data: "is_audit", name: "is_audit", sortable: false},
{data: "audited_at", name: "audited_at", sortable: false}

]

masukkan deskripsi gambar di sini


0

Gunakan ini

dataTable.Columns["OldColumnName"].ColumnName = "NewColumnName";

0

Menggunakan:

dt.Columns["Name"].ColumnName = "xyz";
dt.AcceptChanges();

atau

dt.Columns[0].ColumnName = "xyz";
dt.AcceptChanges();
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.