Я хочу скачать мой PDF-файл по пути к серверу в MVC, пожалуйста, направьте меня ... с кодом - PullRequest
0 голосов
/ 28 марта 2019

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

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 Ответ

1 голос
/ 28 марта 2019

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

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

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" })
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...