i'm actually working on a project using Entity Framework 4.8.
I'm using "ClosedXML" to generate a table and then pass it as xlxs file; i now would like to take it and convert it to a pdf file if possible. here is my code:
public async Task<IHttpActionResult> GetExportTableAsync()
{
using (MYdb Masterdb = new MYdb ())
{
var Requests = Masterdb.Requests.ToList();
XLWorkbook wb = new XLWorkbook();
DataTable dt = ToDataTable(Requests);
wb.Worksheets.Add(dt, "Requests");
return Ok(wb);
}
}
public DataTable ToDataTable<T>(List<T> items)
{
DataTable dataTable = new DataTable(typeof(T).Name);
//Get all the properties
PropertyInfo[] Props = typeof(T).GetProperties(BindingFlags.Public | BindingFlags.Instance);
foreach (PropertyInfo prop in Props)
{
//Setting column names as Property names
dataTable.Columns.Add(prop.Name);
}
foreach (T item in items)
{
var values = new object[Props.Length];
for (int i = 0; i < Props.Length; i++)
{
//inserting property values to datatable rows
values[i] = Props[i].GetValue(item, null);
}
dataTable.Rows.Add(values);
}
//put a breakpoint here and check datatable
return dataTable;
}