一尘不染

在查询字符串中使用的ASP.Net URLEncode和号

c#

我需要重定向到传递参数作为查询字符串的网址。

值中可以包含“&”号。如

string value = "This & That";
Response.Redirect("http://www.example.com/?Value=" + Server.UrlEncode(value));

但是,这将返回http://www.example.com/?Value=This+&+That

我应该用什么来编码这个字符串?

编辑:感谢卢克指出显而易见的事实,该代码确实可以正常工作。抱歉,我的问题毕竟不是有效的问题!

我要去的页面上有很多旧的旧代码,显然是在进行某种编码和解码,使其看起来好像我的urlencode无法正常工作。

不幸的是,我的解决方案是完全删除&的使用,直到可以重写所讨论的代码为止。您不只是讨厌旧代码!


阅读 305

收藏
2020-05-19

共1个答案

一尘不染

文件建议,Server.UrlEncode要正确处理好与符号。

我刚刚测试了您的确切代码,并且返回的字符串已正确编码:

http://www.example.com/?Value=This+%26+That

2020-05-19