2016-04-02 8 views
0

Fotoğrafları bir dış kütüphaneye yüklüyorum ve bu kütüphanenin API'si yüklediğim dosyanın yolunu gerektiriyor. İşte HttpPostedFileBase'den dosya yolu alma

benim Kod: Ben yaptık

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"); 
    } 

ama belli ki bu D:\Visual Studio Projects\Impola\Somefilder1\Somfolder2\App_Data\uploads\cara.jpg

döner ve gerçek filepath olan D:\MyProjects\Images\cara.jpg olduğunu "~/App_Data/uploads" göre bulamıyorum İhtiyacım olan bir tane.

Gerçek dosya yolu nasıl alınır?

+0

Bu yolu, uygulamanızı VS'den çalıştırdığınız için alıyorsunuz. Yayınladığınızda farklı bir yol alacaksın. Gerçek dosya yolundan ne demek istediğinden emin değilsiniz D: \ MyProjects \ Images \ cara.jpg_ –

cevap

0

Basitçe, yolu istediğiniz belirli klasöre değiştirebilirsiniz. Hatayı önlemek için uygulamanızda "Görüntüler" klasörünü oluşturmalısınız. Üretimde, uygulamanıza "Görüntüler" klasörüne yazma izni ayarladığınızdan emin olun.

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