Как отобразить ASP.NET MVC View в формате PDF

работаю с ExpertPDF 's Html-PDF-утилита для преобразования этого вопроса (хотя яЯ открыт для других библиотек, если естьдостаточно документации).

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

Пока что у меня есть PrintService (который реализует интерфейс IPrintService), и эта реализация имеет две перегрузки для PrintToPDF (), одна из которых принимает только URL-адрес, а другая - строку HTML, и обе из которых возвращают байт []. Я'Мы только разработали детали второй перегрузки, которая требует строку HTML.

То, что я хотел бы сделать с моего контроллера, это что-то вроде:

public FileStreamResult Print(int id)
{
    var model = _CustomRepository.Get(id);
    string renderedView = SomethingThatRendersMyViewAsAString(model);
    Stream byteStream = _PrintService.PrintToPdf(renderedView);
    HttpContext.Response.AddHeader("content-disposition", 
        "attachment; filename=report.pdf");
    return new FileStreamResult(byteStream, "application/pdf");  
}

который в теории будет рендерить PDF на страницу. Это'с "SomethingThatRendersMyViewAsAString» что я'ищу помощи. Есть ли быстрый способ получить строковое представление вида? Или, возможно, я должен просто придерживаться перегрузки URL-адреса и передать URL-адрес для просмотра ... Есть еще мысли?

Спасибо!

Ответы на вопрос(4)

Ваш ответ на вопрос