2012-01-19 39 views

Trả lời

8
dt.Columns[8].ColumnName = "regnum"; 

Cột này chỉ gắn Columns[8] vào cột "regnum" không tồn tại trong Db.

Nếu bạn muốn đổi tên cột Db thực tế, hãy thực thi tập lệnh SQL.

Nhưng tôi đoán là bạn thực sự muốn thay đổi Caption:

dt.Columns[8].Caption = "regnum"; 
+0

hmmmm, nó là một thủ tục lưu trữ mà trả về dữ liệu không ký tên riêng: như thế này '(biểu thức) (biểu thức) .... ' –

+0

xin vui lòng, u có thể giải thích thêm những gì bạn muốn nói không? –

9

Sau đây là ví dụ:

DataTable Dt = new DataTable(); 
DataColumn Dc = new DataColumn("Name"); 
DataColumn Dc1 = new DataColumn("ID"); 
Dt.Columns.Add(Dc); 
Dt.Columns.Add(Dc1); 

DataRow dr = Dt.NewRow(); 
dr["name"] = "1"; 
dr["ID"] = "111"; 
Dt.Rows.Add(dr); 

dr = Dt.NewRow(); 
dr["name"] = "2"; 
dr["ID"] = "11112"; 
Dt.Rows.Add(dr); 

Dt.Columns[0].ColumnName = "ddsxsd"; 
Dt.AcceptChanges(); 

tôi không tìm thấy bất kỳ !!!!!!!! mất dữ liệu Bởi vì nó sẽ chỉ thay đổi tên cột.

EDIT

Bạn cũng có thể mang tên cột mong muốn của bạn từ các Stored Procedure của bạn.

0

Hãy thử điều này:

dataTable.Columns["ExistingColumnName"].ColumnName = "regnum"; 
Các vấn đề liên quan