Как вернуть файл в ASP MVC?

Я пытаюсь вернуть файл (.jpg), который хранится в папке /images моего приложения ASP MVC.

По какой-то причине загруженный файл поврежден / поврежден, и ни одна из программ для просмотра фотографий не распознает файл. Я уверен, что правильный файл доступен, так как размер файла точно такой же, и я указал contentType в функции File().

Пожалуйста, кто-нибудь может мне помочь? Спасибо.

public ActionResult order(int? id)
{
   // Logic to get the file path and file name from database
   // var ImageName = "file" 
   // var filepath = will be something like ~/images/file.jpg

   byte[] filedata = System.IO.File.ReadAllBytes(filepath);
   string contentType = MimeMapping.GetMimeMapping(filepath);
   return File(filepath, contentType, ImageName+".jpg");
}

person Vincent    schedule 14.01.2016    source источник
comment
Взгляните на этот пост 5826649   -  person Felix Cen    schedule 15.01.2016


Ответы (1)


Я думаю, у вас проблема с путем к файлу, поскольку корневой путь в приложениях aspnet не совпадает с физическим путем.

попробуйте добавить Server.MapPath

System.IO.File.ReadAllBytes(Server.MapPath(@"~/images/file.jpg")); 
person TerribleDev    schedule 15.01.2016