Как создать PDF-файл с подробным просмотром в MVC 3 - PullRequest
1 голос
/ 02 марта 2012

Я просто хочу сгенерировать PDF-документ с деталями, представленными при нажатии кнопки.

1 Ответ

2 голосов
/ 02 марта 2012

Для создания PDF-файла вам понадобится сторонняя библиотека, так как эта функциональность не встроена в .NET Framework. iTextSharp является популярным.

Так, например, вы можете написать результат пользовательского действия:

public class PdfResult : ActionResult
{
    public override void ExecuteResult(ControllerContext context)
    {
        var response = context.HttpContext.Response;
        response.ContentType = "application/pdf";
        var cd = new ContentDisposition
        {
            Inline = true,
            FileName = "test.pdf",
        };
        response.AddHeader("Content-Disposition", cd.ToString());

        using (var doc = new Document())
        using (var writer = PdfWriter.GetInstance(doc, response.OutputStream))
        {
            doc.Open();
            doc.Add(new Phrase("Hello World"));
        }
    }
}

, а затем заставить действие вашего контроллера вернуть этот результат:

public class HomeController : Controller
{
    public ActionResult Index()
    {
        return new PdfResult();
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...