更改 QueryString 的值
Posted
技术标签:
【中文标题】更改 QueryString 的值【英文标题】:changing value of QueryString 【发布时间】:2011-07-18 01:49:46 【问题描述】:我在查询字符串中遇到错误。我的项目是由 ms visual studio 2003 编写的。请看下面我的代码
<a target="_blank" href="./PageOne.aspx?Customer=NAME1 + NAME2 + NAME3 PARA TEST">NAME1 + NAME2 + NAME3 PARA TEST</a>
系统尝试在 PageOne 获取客户价值,如下所示
Request.QueryString("Customer").ToString
值为
NAME1 NAME2 NAME3 PARA TEST
加号被空格代替。请分享我如何解决此问题。
【问题讨论】:
【参考方案1】:网址受URL encoding and decoding 约束。不幸的是,对于您的 URL,在此编码方案中,+
表示文字空间。您可以自己通过encoding URL 来解决此问题,以便浏览器知道您的参数中有文字+
符号应该保留,例如:
<a target="_blank" href="./PageOne.aspx?Customer=NAME1+%2b+NAME2+%2b+NAME3+PARA+TEST">
【讨论】:
【参考方案2】:在 URL 中尝试 Url 解码 - 更多信息在这里 - HttpServerUtility.UrlDecode Method (String)
【讨论】:
以上是关于更改 QueryString 的值的主要内容,如果未能解决你的问题,请参考以下文章