不同的行为System.Uri

本文关键字:System Uri | 更新日期: 2023-09-27 18:24:07

我是.Net的新手,尤其是4.5版本。

我已经编写了使用类System.Uri对象的库。当我调用代码时:

Uri uri = new Uri("http://myUrl/%2F");

在控制台应用程序中,它创建了AbsoluteUri设置为的新Uri对象

"http://myurl/%2F", 

但是当我在web服务应用程序中调用相同的代码时,AbsoluteUri被设置为

"http://myurl//"

如何在服务器应用中使用"%2f"而不进行转换

不同的行为System.Uri

%2f转换为/

尝试

http://myurl/%252F

%25等于%,则%252F将在服务器端转换为%2F,正如您所期望的

Uri uri = new Uri("http://myUrl/%252F");
uri.LocalPath //  "/%2F"