Файл не загружается с server.mappath - PullRequest
0 голосов
/ 18 апреля 2019

Я пытаюсь вызвать метод действия, который создаст файл PDF и сохранит его в папке и должен загрузить тот же файл

Пытался вернуться, используя метод File в методе action.

getJsonAsync('/LMS/GetBubblePlannerPDFReport?bpid=' + enroll + '&classorgradeIs=' + classorgradeIs + '&PlannerName=' + PlannerName, {}, {
   callback: function (data) { }
});

Действие:

[AllowAnonymous]
public ActionResult GetBubblePlannerPDFReport(string bpid, string classorgradeIs, string PlannerName)
{
    CommonModel model = new CommonModel();
    var data = OASIS.Web.Models.Common.GetData_HTS("BobblePlannerCollectionService.svc/GetBubblePlannerLevelDetailsPDFReport/" + bpid + "/" + classorgradeIs + "/" + PlannerName);
    model.html = JsonConvert.DeserializeObject(data);
    var actionPDF = new ViewAsPdf("StudentObservationWTR", model)
    {
        PageSize = Rotativa.Options.Size.A4,
        PageOrientation = Rotativa.Options.Orientation.Portrait,
        PageMargins = { Left = 10, Right = 10, Top = 20, Bottom = 0 },
    };
    byte[] estimatePDFData = actionPDF.BuildPdf(this.ControllerContext);
    if (!System.IO.Directory.Exists(Server.MapPath("~/Abc/")))
        Directory.CreateDirectory(Server.MapPath("~/Abc/"));
    else
    {
        //System.IO.File.Delete(Server.MapPath("~/Abc/Test") + ".pdf");
        System.IO.File.WriteAllBytes(Server.MapPath("~/Abc/Test") + ".pdf", estimatePDFData);
    }

    var fullpath = Path.Combine(Server.MapPath("~/Abc/"), "Test.pdf");

    return File(fullpath, MimeMapping.GetMimeMapping(fullpath), "TestPdffile");
}
...