我有GridView
允许选择。它需要EntityDataSource
的数据。如何选择GridView
中的行时选择的实体对象?
实体的主键不会显示在GridView
。
感谢您的回答
答案 0 :(得分:1)
如果您在gridview中使用模板字段,则可以在selectAndgument属性中传递主键以用于select命令。例如:
<asp:TemplateField>
<ItemTemplate>
<asp:LinkButton ID="btnSelect" runat="server" Text="Select" CommandName="select" CommandArgument='<%# Eval("My_Primary_Key") %>' />
</ItemTemplate>
</asp:TemplateField>
然后,当用户单击“选择”按钮时,会在您的gridview上触发“RowCommand”事件。如果您捕获此事件并检查e.CommandArgument属性,您将能够访问与其选择的行对应的主键:
protected void myGridView_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName.Equals("select", StringComparison.CurrentCultureIgnoreCase))
{
int primaryKeyInteger = Convert.ToInt32(e.CommandArgument);
// Do other stuff ...
}
}
希望这有帮助!
答案 1 :(得分:0)
您可以使用网格视图的DataKeyNames字段属性,也可以放置隐藏值并将数据绑定到数据绑定事件。使用隐藏字段Gridview选择事件,您搜索找到隐藏字段并从那里获取值。谢谢 以下链接将为您提供帮助。
答案 2 :(得分:0)
您可以在gridview中使用隐藏控件来隐藏主键
答案 3 :(得分:0)
你可以使用主键去数据库用主键搜索记录。然后在程序中使用一个类来接收数据。(c#是属性)