从URI相对路径中删除%20

Ste*_*bbi 23 c# uri relative-path

我正在生成从1目录到另一个目录的相对路径.如果OutputDirectoryName属性是包含空格的目录,则使用%20而不是空格对空格进行编码.我正在创建一个Windows文件夹的相对路径,所以我必须使用空格我的相关路径.是否有一种干净的方式来指定URI的编码方式?我知道我可以在relativePath.ToString()上做一个stirng替换,但我想知道是否有更好的实现.谢谢.

public string GetOutputDirectoryAsRelativePath(string baseDirectory)
{
    Uri baseUri = new Uri(baseDirectory);
    Uri destinationUri = new Uri(OutputDirectoryName);
    Uri relativePath = baseUri.MakeRelativeUri(destinationUri);
    return relativePath.ToString();
}
Run Code Online (Sandbox Code Playgroud)