2016-04-02 53 views
0

我將照片上傳到外部庫,並且此庫的API需要我上傳文件的路徑。如何從HttpPostedFileBase獲取filePath

這裏是我的代碼:

public ActionResult UploadImageToCloudinary(HttpPostedFileBase file, string group, string filter) 
    { 

     if (file != null && file.ContentLength > 0) 
     { 
      // extract only the fielname 
      var fileName = Path.GetFileName(file.FileName); 
      if (fileName != null) 
      { 
       // get path including filename 
       var path = Path.Combine(Server.MapPath("~/App_Data/uploads"), fileName); 

       // other unimportant logic 

     } 


     return Content("Fail"); 
    } 

我已經做到了這一點,但很明顯,根據"~/App_Data/uploads" 它返回D:\Visual Studio Projects\Impola\Somefilder1\Somfolder2\App_Data\uploads\cara.jpg

和真實filepath是D:\MyProjects\Images\cara.jpg這是它無法找到它我需要一個。

如何獲得真正的文件路徑?

+0

你得到的路徑是因爲你從VS運行你的應用程序。當你發佈它時,你會得到不同的路徑。不確定你真正的文件路徑是什麼意思是D:\ MyProjects \ Images \ cara.jpg_ –

回答

0

簡而言之,您可以將路徑更改爲所需的特定文件夾。您應該在應用程序中創建文件夾「Images」以避免錯誤。在製作過程中,確保您將應用程序的寫入權限設置爲「圖像」文件夾。

var path = Path.Combine(Server.MapPath("~/Images/"), fileName); 
相關問題