Spesso nella realizzazione di WebApplication si rende necessaria la realizzazione di file PDF al “volo”. All’interno di Nuget esistono numerose librerie (gratuite e non) che permettono di raggiungere il nostro obiettivo. Nel corso di un rapido deploy, ho avuto la necessità di generare un file PDF a partire da un Model esistente. In particolare il mio progetto prevedeva l’accesso ad un Repository che mi permetteva di recuperare una lista di oggetti. Mi sono imbattuto nella libreria ROTATIVA (free), molto semplice da installare, ma che permette di ottenere rapidamente un PDF semplicemente restituendo una ActionResult all’interno di un Controller. Vediamo rapidamente i pasaggi da effettuare per poter utilizzare questo componente.

  1. Dalla console di Visual Studio digitare: Install-Package Rotativa
  2. Al termine dell’installazione troveremo all’interno del nostro progetto una cartella denominata Rotativa. Verifichiamo all’interno del nostro Controller che sia presente una Reference alla libreria Rotativa.
  3. A questo punto siamo pronti per la realizzione di una semplice View che ritorna una classica ActionResult. Possiamo chiamare questa View, ad esempio GeneratePDF.Questa actionResult ritornerà una normale View che verrà utilizzata da Rotativa per la generazione del PDF.
  4. A questo punton non ci resta che creare un nuova ActionResult che, richiamando il metodo ROTATIVA.ViesAsPdf(…) consenta di generare il file PDF.

In pratica una volta ottenuto il model (utilizzando la classe GeneratePDFModel(…) ) e passando il nome della View da utilizzare per il rendere ed il model al metodo ViewAsPdf(…) verrà generato il file TestViewAsPdf.pdf.

La libreria Rotativa è presente https://github.com/webgio/Rotativa

 

 

 

https://dotnettortona.net/wp-content/uploads/2015/08/lg_aspmvc5.pnghttps://dotnettortona.net/wp-content/uploads/2015/08/lg_aspmvc5-150x150.pngDotNetMicrosoft MVCController,MVC,PDF,Rotativa,ViewSpesso nella realizzazione di WebApplication si rende necessaria la realizzazione di file PDF al 'volo'. All'interno di Nuget esistono numerose librerie (gratuite e non) che permettono di raggiungere il nostro obiettivo. Nel corso di un rapido deploy, ho avuto la necessità di generare un file PDF a partire da...La prima Community su .NET a Tortona (AL)