C#.Net如何用%20而不是+编码URL空间

Sha*_*K J 13 .net c# asp.net-mvc web

如何编码查询字符串空间%20而不是+?因为System.Web HttpUtility.UrlEncode()给了空间+.

L.B*_*L.B 20

https://msdn.microsoft.com/en-us/library/system.uri.escapeuristring(v=vs.110).aspx

var encoded = Uri.EscapeUriString("How to encode");
Run Code Online (Sandbox Code Playgroud)

OUTPUT:

How%20to%20encode
Run Code Online (Sandbox Code Playgroud)

  • 自 2021 年 9 月 15 日起,Uri.EscapeUriString 已被标记为已过时,因为它“在某些情况下可能会损坏 Uri 字符串”。正如 @Robert Koernke 所说,微软推荐的新方法是 Uri.EscapeDataString() (6认同)
  • 您可能要使用Uri.EscapeDataString(),因为Uri字符串将获得空格,但不会编码其他字符。示例“#” (4认同)