Questo codice per il caricamento di file di immagine sta lavorando bene quando costruito su localhost. Ma dopo l'implementazione, non funziona e non dà alcun errore.ASP.NET MVC upload di file di lavoro su costruzione locali, non funzionante dopo la distribuzione
Ho provato a cambiare l'imagePath da /Content/Images/Items/
a ~/Content/Images/Items/
e Content/Images/Items/
. Ancora nessuna soluzione.
[HttpPost]
public ActionResult AddProduct(ProductDisplay productDisplay,HttpPostedFileBase upload)
{
bool isSaved = false;
string fileName = string.Empty;
string imagePath = string.Empty;
try
{
if(upload!=null && upload.ContentLength>0)
{
fileName = System.IO.Path.GetFileName(upload.FileName);
imagePath = "/Content/Images/Items/" + fileName;
upload.SaveAs(Server.MapPath(imagePath));
}
else
imagePath = "/Content/Images/Items/" + "NoImage.jpg";
productDisplay.ImagePath = imagePath;
ProductMangementBL balProduct = new ProductMangementBL();
isSaved = balProduct.AddProduct(productDisplay);
}
catch (Exception ex)
{
isSaved = false;
}
return RedirectToAction("ProductList", new RouteValueDictionary(new { controller = "Product", action = "ProductList", Id = productDisplay.CategoryID }));
}
c'è un'eccezione essere gettato? Vedo solo che imposti un booleano nel blocco catch: non vedi alcuna registrazione, quindi qualsiasi eccezione generata viene ingoiata e informazioni utili che dicono che cosa è andato storto si sta perdendo. senza conoscere l'eccezione, dubito che troverai una soluzione. – user1666620
Non dovrebbe essere un segno '\ and a @' all'inizio? – brothers28
Il problema era con l'autorizzazione del pool di applicazioni. Grazie a tutti per aver messo lì i pensieri qui. – sri