我有两个Uri对象传入一些代码,一个是目录,另一个是文件名(或相对路径)
var a = new Uri("file:///C:/Some/Dirs");
var b = new Uri("some.file");
Run Code Online (Sandbox Code Playgroud)
当我尝试将它们组合起来时:
var c = new Uri(a,b);
Run Code Online (Sandbox Code Playgroud)
我明白了
file:///C:/Some/some.file
我希望得到与之相同的效果Path.Combine(因为那是我需要替换的旧代码):
file:///C:/Some/Dirs/some.file
我想不出一个干净的解决方案.
丑陋的解决方案是/在Uri中添加一个,如果不存在的话
string s = a.OriginalString;
if(s[s.Length-1] != '/')
a = new Uri(s + "/");
Run Code Online (Sandbox Code Playgroud)