MVC Project Controller.File сохранить поврежденный PDF - PullRequest
0 голосов
/ 05 декабря 2018

Я конвертирую проект ASP.NET в MVC и функциональность, которая сохраняет файл PDF, который работает в ASP.NET, создает поврежденный файл в MVC.Я вызываю один и тот же метод бизнес-уровня в обоих проектах.Метод использует библиотеку Syncfusion PDF.Строка HTML, отправляемая в код Syncfusion, одинакова в обоих проектах.Поток, который возвращается из кода Syncfusion, на один байт больше в проекте MVC, а байтовый массив, который возвращается из метода, на 106 байтов больше в проекте MVC.Я не работал с MVC до того, как понял, почему это так.Код в обоих случаях довольно прост:

ASP.NET

        byte[] result = QuestionnaireManager.GetPDFofQuestionnaire(this.Questionnaire.ID, true);

    Response.Clear();
    MemoryStream ms = new MemoryStream(result);
    Response.ContentType = "application/pdf";
    Response.AddHeader("content-disposition", "attachment;filename=Questionnaire.pdf");
    Response.Buffer = true;
    ms.WriteTo(Response.OutputStream);
    Response.End();

MVC

            byte[] data = QuestionnaireManager.GetPDFofQuestionnaire(questionnaireID, true);
        Response.AddHeader("content-disposition", "attachment;filename=Questionnaire.pdf");
        return File(data, "application/pdf");

Любые идеи приветствуются.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...