如何在ASP.NET中正确编码包含&符号的URL?

时间:2014-07-30 17:19:37

标签: c# asp.net iis urlencode url-encoding

如何正确编码以下网址?

http://mysite/myapp/content/Documents/Opening Leave Case for Supervisors-WC&TW.pdf

当我在url编码文件名后查看url时出现此错误:

  

"请求过滤模块配置为拒绝包含双转义序列的请求。"

我确定问题在于文件名中的&符号,但我不确定如何正确处理它。

这是我到目前为止(不起作用):

string.Concat( "~/Content/Documents/", HttpUtility.UrlEncode( ContentLocation ) );

1 个答案:

答案 0 :(得分:2)

您可以尝试使用HttpUtility.UrlPathEncode将空格转换为"%20"而不是" +"。除此之外,我认为你正在做的事情没有错。 http://msdn.microsoft.com/en-us/library/system.web.httputility.urlpathencode(v=vs.110).aspx

此外,您还需要发布此错误发生位置的上下文,因为转换中的错误显然不会发生。