我有一個可以使用控制器訪問的網絡驅動器。例如「\ mydrive \ filestorage」。我希望用戶能夠下載存儲在此服務器上的文件。這意味着我無法使用url,因爲這些文件不在Web服務器根目錄中。我也無法爲這個驅動器設置一個Web服務器,除了使用控制器讀取文件並以這種方式下載文件外,我沒有其他方式可以訪問這些數據。使用ASP從遠程服務器下載文件MVC
我發現了一些教程來做它的服務器上的文件,但我不能讓它在使用遠程文件時工作。我想要一個下載鏈接,點擊它並下載文件。下面是代碼我有
public ActionResult DownloadFile(string id)
{
UploadedDocument document = new UploadedDocument(Int32.Parse(id));
string filecontents = System.IO.File.ReadAllText(document.FilePath);
string filetype = Helpers.GetMimeType(document.FilePath);
return File(filecontents, filetype);
}
我得到下面的異常
System.IO.DirectoryNotFoundException:找不到 路徑「的一部分,C:\的Inetpub \ wwwroot文件...
filepath變量將是網絡驅動器的路徑。
\\Netdrive\Uploads\somefile.txt
文件內容和文件類型的2個變量正在填充正確。返回文件時拋出異常。當我在調試模式下運行代碼時,2個變量填充如下。
filecontents = "test\r\n"
filetype = "text\plain"
是什麼'document.FilePath'的價值? – Jamiec
網絡共享路徑始終以'\\'開頭,而不是'\'開頭。這是一個錯字嗎? –
有2個斜槓,評論標籤是刪除第一個。 –