MVC Core возвращает pdf с контроллера - PullRequest
0 голосов
/ 25 февраля 2020

Я борюсь с концепцией.
Ожидаемый результат - возврат динамически сгенерированного файла PDF пользователю. Скорее всего, я сгенерирую pdf с библиотекой, которая преобразует html в pdf, такой как IronPDF et c., Поскольку на данный момент это приемлемый способ.
До сих пор я создал PDF в контроллере API, который возвращает PDF-файл пользователю. До сих пор я использовал PDFSharp и MigraDo c. Однако, если я правильно понимаю, было бы намного проще использовать контроллер для преобразования файла html в pdf и его возврата.

Вопрос на данный момент:
Должен ли я сгенерировать файл html в другом контроллере, а затем вызвать этот результат из контроллера, который возвращает pdf?
Кажется немного громоздким, чтобы создать html строку в контроллере, а затем вернуть ее в преобразованном виде в pdf.

Так что, на мой взгляд, у меня будет контроллер, который возвращает нормальное представление, и в моем ConvertToPdfController я вызовет результирующую страницу первого контроллера. Я где-нибудь рядом с разумным решением?

Решение будет примерно таким: веб-страница будет иметь кнопку «Распечатать счет». Эта кнопка вызовет мой метод PrintPDFInvoice в контроллере. Этот метод PrintPDFInvoice возвращает результат моего метода GenerateInvoice в том же контроллере, который выполняет всю работу по генерации счета-фактуры в виде страницы html и возвращает нормальный вид, следовательно, полную страницу html. И мой PrintPDFInvoice метод, вызывающий эту страницу, просто преобразовал бы эту страницу в pdf.

Я знаю, что это неясно, но для меня это так. Мне нужен контроллер, возвращающий нормальное представление для генерации страницы html. Тогда другой контроллер преобразует это в PDF. Это разумный подход?

...