2016-04-18 58 views
0

我有一個MVC應用程序,它利用Open XML上傳Excel文件。在我的本地機器上一切正常,但只要我部署它似乎並沒有工作,並引發上述異常。我已授予在IIS中運行的用戶的文件夾權限,該用戶名是我創建的AD帳戶。但仍然拋出異常。我看過一些關於此的帖子,但我沒有運氣。請參閱下面的代碼,也許有關於任何更改的建議。找不到路徑的一部分'xxx xxx.xlsx'

public ActionResult Upload(HttpPostedFileBase file, string sSheetName) 
     { 
      string sid = HttpContext.Session.SessionID; 

      List<CleanSupplierClaim> supplierClaimsData = new List<CleanSupplierClaim>(); 

      try 
      { 
       if (file.ContentLength > 0) 
       { 
        var fileName = file.FileName; 
        var targetFolder = Server.MapPath("~/upload/"); 
        string targetPath = Path.Combine(targetFolder, fileName); 
        file.SaveAs(targetPath); 
+0

在IIS中啓用「啓用父路徑」嗎? – Mez

+0

此外,請嘗試記錄服務器上的路徑實際上是由....服務器/您的本地機器路徑不完全相同,您可能有問題... – Mez

+0

這樣做的伎倆,現在我正在得到另一個例外。找不到文件'c:\ windows \ system32 \ inetsrv \ xxx.xlsx'。這是當我嘗試瀏覽我的本地機器上的託管網站,在它的工作正常的服務器上。我已經添加了在應用程序池中運行的IIS用戶的權限,但仍然沒有運氣,請協助。 – Papi

回答

0

將以下行添加到您的web.config中,以在AD帳戶下運行您的應用程序。

<identity impersonate="true" userName="domain\user" password="password" /> 
0

看一看你這些故障排除項...他們應該讓你在IIS中去......

  • 確保「啓用父路徑」開啓
  • 嘗試登錄服務器上的路徑實際上是由什麼組成的....鑑於服務器/本地機器路徑不完全相同,您可能會遇到問題...
  • 將基本URL存儲在配置中,並且然後從根文件夾向後追加文件夾結構。因此,您將存儲yoursite.com作爲配置,然後在....之後附加文件夾配置。這會使您的文件可訪問。
相關問題