我有一个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的信息?我必须对我的代码做些什么吗?
谢谢
答案 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)
您可以使用查询字符串从您的网址中提取数据..