Using C# MVC I am creating a report by passing a HTML partial view through PdfResult. This provides exactly what is needed except for the lack of page numbers.
The GetDetails
simply calls a service that returns a list of results. The printlist
view is then called using the list of results as a model (see below).
Does RazorPDF provide a way to put page numbers on the report?
public ActionResult PrintReport(DateTime printDate)
{
var printModel = printController.GetDetails(printDate);
var pdfDoc = new PdfResult(printModel , "printlist");
return pdfDoc;
}
View:
<paragraph style="font-family:Arial;font-size:18;">
<table width="100%" cellpadding="1.0" cellspacing="1.0" widths="5;5">
<row>
<cell borderwidth="0.5" left="false" right="false" top="false" bottom="false">
<chunk style="font-size:14;font-weight:bold;">@ViewBag.Title</chunk>
</cell>
<cell borderwidth="0.5" left="false" right="false" top="false" bottom="false" horizontalalign="Right">
<chunk style="font-size:14;font-weight:bold;">@Model.First().appointment_date.ToString().Substring(0,10)</chunk>
</cell>
</row>
</table>
</paragraph>
<table width="100%" cellpadding="1.0" cellspacing="1.0" widths="4;10;7;14;4;4;4;3;4;4;4;4">
<row>
<cell borderwidth="0.5" left="false" right="false" top="true" bottom="true"><chunk>Time</chunk></cell>
<cell borderwidth="0.5" left="false" right="false" top="true" bottom="true"><chunk>Name</chunk></cell>
<cell borderwidth="0.5" left="false" right="false" top="true" bottom="true"><chunk>Number</chunk></cell>
<cell borderwidth="0.5" left="false" right="false" top="true" bottom="true"><chunk>Reason</chunk></cell>
</row>
@foreach (var item in Model)
{
<row>
<cell>@item.appointmentStart</cell>
<cell>@item.surname,@item.forename</cell>
<cell>@item.customerIdentifier</cell>
<cell>@item.reason</cell>
</row>
}
</table>