使用HyperLinkFields显示详细信息

时间:2009-03-30 14:15:12

标签: c# asp.net url gridview hyperlink

我有一个Web应用程序(ASP.NET 2.0 C#),我将Oracle数据库中的数据导入gridview。我在之前的一个问题中曾询问如何将这些数据转换为链接,例如,将我带到详细信息页面。这就是我得到的答案:

<asp:HyperLinkField DataNavigateUrlFields="ID"
     DataNavigateUrlFormatString="DetailPage.aspx?id={0}"
                        DataTextField="CategoryName" NavigateUrl="DetailPage.aspx" />

执行此操作会生成ID的链接,一旦我点击它,ID就会出现在下一页的URL中。

我的问题是,我应该如何使用URL中的这些数据来实际显示有关该ID的信息?我必须对我的代码做些什么吗?

谢谢

3 个答案:

答案 0 :(得分:0)

在您的代码中是的,您需要从查询字符串中获取id,将其发送到数据库,然后将返回值连接到显示元素。

如果可以从查询字符串中提取参数,则可以使用DataSource实现此目的。

答案 1 :(得分:0)

在DetailPage的页面加载上使用QueryString来获取id

if(!IsPostBack)
{
    try
    {
        intMyId = (int)Request.QueryString["id"];
        //Do something with intMyId
    }
    catch(InvalidCastException ex)
    {
       //Record and show error message
    }
}

注意:您需要验证该ID是否为有效ID,因为攻击者可以在其中放置他们想要的任何内容。还要验证用户是否可以查看ID。

答案 2 :(得分:0)

您可以使用查询字符串从您的网址中提取数据..

相关问题