Request.QueryString如何工作?

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

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

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

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

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

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

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

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

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

不确定你在答案中究竟在寻找什么,但请查看http://en.wikipedia.org/wiki/Query_string

 Request.QueryString["pID"]; 

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

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

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

 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" 

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

你可以在谷歌收集更多细节。