2013-02-12 34 views
0

我有一種時髦的問題 - 給出的uri http://localhost,和相對文件路徑virtualdirectory\\path\\to\\my\\file.html,我怎麼能合併成一個有效的網址應該是http://localhost/virtualdirectory/path/to/my/file.html將Url和相關文件路徑加入有效的Uri?

我正在使用Web.API和客戶端搜索來查看靜態html文件是否存在於服務器上的虛擬目錄中。客戶端使用jQuery請求搜索,Web.API控制器在本地虛擬目錄上執行搜索。如果該文件存在,則控制器需要將有效的Url返回給客戶端,以便客戶端可以查看該靜態html文件。

如果這是有道理的。 :)

+1

看一看這個問題:http://stackoverflow.com/questions/4925468/combine-relative-baseuri-with-relative-path – 2013-02-12 18:47:01

+1

或者這一個http://stackoverflow.com/問題/ 3681052/get-absolute-url-from-relative-path-refactored-method其中有一個非常有用的評論,接受的答案 – 2013-02-12 18:49:40

回答

1
new Uri(new Uri("http://localhost/"), "virtualdirectory\\path\\to\\my\\file.html".Replace("\\","/")); 
+0

只是一個有趣的提示:即使沒有Replace()調用,代碼也能正常工作。 – 2013-02-12 18:50:20

+0

@SergeyBrunov這並不讓我感到驚訝。 Uri班級試圖做很多魔術。雖然很高興知道。 – 2013-02-12 19:02:19