Request.QueryString如何工作?

时间:2013-08-21 15:02:52

标签: c# asp.net request.querystring

我有一个像这样的代码示例:

 location.href = location.href + "/Edit?pID=" + hTable.getObj().ID; ; //aspx    
 parID = Request.QueryString["pID"]; //c#

它有效,我的问题是 - 如何?逻辑是什么? 谢谢:))

5 个答案:

答案 0 :(得分:20)

HttpRequest类表示对服务器发出的请求,并具有与之关联的各种属性,例如QueryString

ASP.NET运行时将请求解析到服务器并为您填充此信息。

阅读HttpRequest Properties以获取ASP.NET代表您填充的所有潜在属性的列表。

注意:并非所有属性都会被填充,例如,如果您的请求没有查询字符串,那么QueryString将为空/空。因此,在使用它之前,您应该检查一下您在查询字符串中的内容是否确实存在:

if (!String.IsNullOrEmpty(Request.QueryString["pID"]))
{
    // Query string value is there so now use it
    int thePID = Convert.ToInt32(Request.QueryString["pID"]);
}

答案 1 :(得分:5)

Request对象是发送到某个服务器的整个请求。这个对象附带一个QueryString字典,它是'?'之后的所有内容在URL中。

在答案中不确定您的确切要求,但请查看http://en.wikipedia.org/wiki/Query_string

答案 2 :(得分:4)

Request.QueryString["pID"];

此处请求是一个对象,用于检索客户端浏览器在HTTP请求期间传递给服务器的值,而 QueryString 是一个用于检索变量值的集合在HTTP查询字符串中。

阅读更多@ http://msdn.microsoft.com/en-us/library/ms524784(v=vs.90).aspx

答案 3 :(得分:3)

查询字符串是发送到网页的参数数组。

This url: http://page.asp?x=1&y=hello

Request.QueryString[0] is the same as 
Request.QueryString["x"] and holds a string value "1"

Request.QueryString[1] is the same as 
Request.QueryString["y"] and holds a string value "hello"

答案 4 :(得分:0)

QueryString集合用于检索HTTP查询字符串中的变量值。

HTTP查询字符串由问号(?)后面的值指定,如下所示:

链接查询字符串

上面的行生成一个名为txt的变量,其值为“this is a query string test”。

查询字符串也是通过表单提交或用户在浏览器的地址栏中键入查询来生成的。

请参阅此示例:http://www.codeproject.com/Articles/5876/Passing-variables-between-pages-using-QueryString

请参阅:http://www.dotnetperls.com/querystring

您可以在Google中收集更多详细信息。