在C#中,如何根据';在gridview行中单击
我有一个显示产品gridview的页面。此表中有一列,其中包含一个名为“详细信息”的超链接。我希望这样,如果用户单击该特定产品的“详细信息”单元格,将打开一个新页面,提供该产品的更多信息。我不确定如何确定“详细信息”链接位于哪个在C#中,如何根据';在gridview行中单击,c#,asp.net,C#,Asp.net,我有一个显示产品gridview的页面。此表中有一列,其中包含一个名为“详细信息”的超链接。我希望这样,如果用户单击该特定产品的“详细信息”单元格,将打开一个新页面,提供该产品的更多信息。我不确定如何确定“详细信息”链接位于哪个产品记录中,以及如何将其转到下一页。至于“链接”您的产品记录,程序员使用唯一标识符进行此操作。在大多数情况下,您将使用整数 历史上,人们使用查询字符串将数据库ID从一个页面传递到另一个页面。在ASP.NET中,您也可以这样做。或者,您可以将产品ID存储在会话中,然后从新页
产品记录中,以及如何将其转到下一页。至于“链接”您的产品记录,程序员使用唯一标识符进行此操作。在大多数情况下,您将使用整数
历史上,人们使用查询字符串将数据库ID从一个页面传递到另一个页面。在ASP.NET中,您也可以这样做。或者,您可以将产品ID存储在会话中,然后从新页面中的会话中加载该ID。您可以在查询字符串中使用产品ID的超链接字段
以下是一个示例:
<asp:GridView runat="server" ID="gridViewProducts">
<Columns>
<asp:HyperLinkField HeaderText="ProductId" DataNavigateUrlFormatString="ProductDetail.aspx?action=edit&id={0}" DataNavigateUrlFields="ProductId" DataTextField="ProductId" />
<asp:BoundField HeaderText="Product Name" DataField="ProductName" />
</Columns>
</asp:GridView>
绑定时,productID自动进入查询字符串您可以获取gridview的productID by index属性。使用该productId,您可以导航到特定产品的详细信息。我完全不建议这样做。在querystring中发送产品id就足够了,并且不会消耗服务器资源。另外,这需要开发人员进行额外的工作来构建和维护。此外,如果用户希望打开多个产品页面,该怎么办?使用会话变量会限制这种可能性。此外,OP说他不确定选择了哪种产品,所以他如何将其保存到会话中?@DustinDavis,我在回答的第一部分提到了唯一标识符。不清楚吗?其次,我不是推荐一种方法而不是另一种方法,我只是说你可以做到这一点。