我需要重定向到传递参数作为查询字符串的网址。
值中可以包含“&”号。如
string value = "This & That"; Response.Redirect("http://www.example.com/?Value=" + Server.UrlEncode(value));
但是,这将返回http://www.example.com/?Value=This+&+That
我应该用什么来编码这个字符串?
编辑:感谢卢克指出显而易见的事实,该代码确实可以正常工作。抱歉,我的问题毕竟不是有效的问题!
我要去的页面上有很多旧的旧代码,显然是在进行某种编码和解码,使其看起来好像我的urlencode无法正常工作。
不幸的是,我的解决方案是完全删除&的使用,直到可以重写所讨论的代码为止。您不只是讨厌旧代码!
该文件建议,Server.UrlEncode要正确处理好与符号。
Server.UrlEncode
我刚刚测试了您的确切代码,并且返回的字符串已正确编码:
http://www.example.com/?Value=This+%26+That