我需要保持在网格中的主键,以便当我需要更新某一行时,我可以检索基于主键的最新数据,然后显示在字段,然后当用户更改字段值时,可以更新数据。什么是最好的方式来保持主键在网格
有一些方法可以让我做到这一点,例如我可以带一个绑定字段,将其Visible属性设置为False并将其绑定到我的主键列。我也可以使用GridView的DataKeyNames属性
但我不知道哪一个是最好的方法来保持主键隐藏在gridview中。
我需要保持在网格中的主键,以便当我需要更新某一行时,我可以检索基于主键的最新数据,然后显示在字段,然后当用户更改字段值时,可以更新数据。什么是最好的方式来保持主键在网格
有一些方法可以让我做到这一点,例如我可以带一个绑定字段,将其Visible属性设置为False并将其绑定到我的主键列。我也可以使用GridView的DataKeyNames属性
但我不知道哪一个是最好的方法来保持主键隐藏在gridview中。
您需要在gridView中使用DataKey。
DataKeyNames
将是您的Primary key
的列名称。
.aspx的代码(在GridView控件开始标记):
DataKeyNames = "Customer_ID"
C#代码(访问DataKey):
foreach (GridViewRow row in gvCustomers.Rows)
{
string Customer_ID= gvCustomers.DataKeys[row.RowIndex]["Customer_ID"].ToString();
}
是的,你是正确的,你可以使用GridView.DataKeyNames Property
获取或设置一个数组,其中包含GridView控件中显示的项的主键 的名称。
事情是这样的:
<asp:GridView DataKeyNames = "myID" ...
使用'DataKeyNames'性能 - 这就是它的存在! –