Я хочу загрузить свой PDF-файл по пути к серверу в mvc, пожалуйста, кто-нибудь подскажет мне… с помощью code

#asp.net-mvc #pdf #model-view-controller #view

#asp.net-mvc #PDF #model-view-controller #Вид

Вопрос:

что такое код контроллера. как я могу задать путь к папке сервера.

 string path = HttpContext.Server.MapPath("~/Areas/CreatePaperSet/PdfPaperSet");
HttpContext.Response.TransmitFile(path);


WebClient client = new WebClient();
byte[] buffer = client.DownloadData(path);
if (buffer != null)
{
    Response.Clear();
    Response.ContentType = "application/pdf";
    Response.AddHeader("content-disposition", "attachment;filename=DownloadPaperSet.pdf");
    Response.Cache.SetCacheability(HttpCacheability.NoCache);
    Response.BinaryWrite(buffer);
    Response.End();

}


pdfDoc.Close();
  

Ответ №1:

Это мой способ загрузить файл в папку, и это сработало.

Вы можете создать действие с именем файла в качестве параметра. В действии вы считываете файл как byte [] и возвращаете файловый объект.

 public ActionResult Download(string fileName)
 {
    string path = Server.MapPath("~/Content/PdfPaperSet");

    byte[] fileBytes = System.IO.File.ReadAllBytes(path   @""   fileName);

    return File(fileBytes, System.Net.Mime.MediaTypeNames.Application.Octet, fileName);
}
  

В вашем файле cshtml передайте fileName = «yourfile.pdf» в качестве параметра.

 @Html.ActionLink("Download Your File", "Download", new { fileName = "yourfile.pdf" })
  

Комментарии:

1. Спасибо, чувак, за твой возврат