我想將一個URL如http://localhost/app/Uploads/file.png
轉換爲我的應用程序虛擬路徑,即~/Uploads/file.txt
。在asp net mvc中從url獲取虛擬路徑5
我的問題是如何在asp net mvc中完成?
編輯:對我的情況作進一步澄清的一些解釋。
我有一個「創建」窗體。在這種形式下,用戶設置其配置文件並可以將照片上傳到服務器。可以通過將照片上傳到服務器來預覽此照片。這是通過FileUploadController(它是一個ApiController)的動作Post()完成的。此操作只是將上傳的文件保存到虛擬路徑「〜/ Uploads /」,然後將完整的URL返回到保存的文件,如http://localhost/app/Uploads/file.png
。然後,頁面上的JavaScript捕獲此URL並更新<img>
標記以顯示圖片,並使用此URL設置隱藏輸入字段的值。這工作正常。
現在我必須執行提交這個「創建」表單的動作。其中,動作視圖模型接收照片的URL,即http://localhost/app/Uploads/file.png
,它應該用於將文件'file.png'從臨時位置「〜/ Uploads/file.png」複製到另一個位置。但是,要複製這個文件,我需要本地路徑它,我擁有的就是URL。
你從哪裏得到原始網址?如果你只是想創建一個到該文件的鏈接,那麼你會使用'Url.Content(「〜/ Uploads/file.txt」)',完全不需要這個完全限定的版本。 – David
原始網址來自Url.Content(「〜/ Uploads/file.txt」)。但是,這是在另一個行動中完成的。 – TapiocaCom
聽起來像http://stackoverflow.com/questions/6081433/getting-relative-virtual-path-from-physical-path –