c# - System.Uri.ToString() 取消转义 uri 编码的查询字符串。如何阻止它?

标签 c# asp.net

如果我这样做:

new Uri("http://www.example.com?name=i%20hate%20asp.net!").ToString()

它不返回:

http://www.example.com?name=i%20hate%20asp.net!

它返回:

http://www.example.com?name=i hate asp.net!

为什么?我该如何使它正常工作?

最佳答案

您需要使用 Uri.AbsoluteUri . ToString() 只是底层数据的字符串表示,而不是正确的 URI。

new Uri("http://www.mydomain.com?name=i%20hate%20asp.net!").AbsoluteUri

关于c# - System.Uri.ToString() 取消转义 uri 编码的查询字符串。如何阻止它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6679792/

相关文章:

c# - 计划的 "private protected"C# 访问修饰符是什么意思?

ASP.NET MVC4 异步 Controller - 为什么要使用?

asp.net - 从 ASP 到 ASP.NET 的 6 个月迁移路径 - 值得互操作吗?

asp.net - Asp.Net MVC 3 应用程序中复杂子对象的集合?

javascript - 使用自定义标记的 Google map V3.0

c# - ASP NET MVC RAZOR 上传多个图像文件列表

c# - 如何从 web api 中的 Angular 帖子读取文件?

带有 json 字符串的 C# mongo 查询

c# - Parameters.AddWithValue 不将占位符文本替换为实际值

c# - 根据应用程序设置有选择地输出 javascript 的好方法