查询字苻串是追加在URL后的数据(也是我常用的)
例如:http://www.cnblogs.com/aierong/admin/EditPosts.aspx?opt=abc这里?后的opt=1就是查询字符串当我们在一页面向另一页面传递数据时可以用此方法。使用如下方法接到数据:string str=Request.QueryString[“opt“]这样str就等于“abc“这里我们传递的是英文字符,要是传递中文字符,我们得进行编码和解吗:傳送時用Server.UrlEncode方法編碼,接收時用Server.UrlDecode解碼.例如:传递:string url=“http://www.cnblogs.com/aierong/admin/EditPosts.aspx?opt=“+Server.UrlEncode(“我们“);Response.Redirect(url);接收:string str=Server.UrlDecode(Request.QueryString[“opt“]);这样str就等于“我们“当然我们还有一省事的方法:在web.config中修改globalization节为<globalization requestEncoding="gb2312" responseEncoding="gb2312" />总结查询字符串是在页 URL 的结尾附加的信息。
可以使用查询字符串来通过 URL 将数据提交回您的页或另一页上。
查询字符串提供一种维护某些状态信息的简单但有限的方法。例如,它们是将信息从一页传送到另一页的简便的方法(例如,将产品号传递到将处理该产品号的另一页)。使用查询字符串的优点1.不需要任何服务器资源:查询字符串包含在对特定 URL 的 HTTP 请求中。
2.广泛的支持:几乎所有的浏览器和客户端设备均支持使用查询字符串传递值。3.实现简单:ASP.NET完全支持查询字符串方法,其中包含了使用 HttpRequest 对象的Params属性读取查询字符串的方法。使用查询字符串的缺点1.潜在的安全性风险
用户可以通过浏览器用户界面直接看到查询字符串中的信息。用户可将此URL设置为书签或发送给别的用户,从而通过此URL传递查询字符串中的信息。如果您担心查询字符串中的任何敏感数据,请考虑使用窗体(使用 POST而不是查询字符串)中的隐藏域。2.有限的容量
有些浏览器和客户端设备对URL的长度有2083个字符的限制。