我正在为我的应用程序编写一个小型Web界面,并且我已经开始将已知的文档路径和请求URI组合到一个绝对本地路径中以从中检索文件。
为简单起见,我将代码缩小到相关的内容:
string AssemblyDirectory = "C:\MyAppDir\";
string uri = "/index.html";
return new Uri(new Uri(Path.Combine(AssemblyDirectory, "http_docs")), uri).AbsolutePath;
这将始终只返回uri部分;即返回是" /index.html" ;,它似乎不喜欢正确组合Uri和Path的类型。我知道只需用" \"替换" /"然后做一个简单的path.combine就行了,但我不能帮助,但认为有一个.net解决方案,这是我忽略的地方。
答案 0 :(得分:0)
问题是您/
之前有index.html
。它使Uri API引用了uri的根,它最终为您提供:c:\index.html
。
删除/ in uri以使其正常工作:
string uri = "index.html";