public async Task <string> CreateMillenniumHealthReport(MillenniumHealthCaseReportData dataSource) { string filePath = System.Configuration.ConfigurationManager.AppSettings["ReportTemplateLocation"].ToString() + "\\" + dataSource.TemplateName; XmlReaderSettings settings = new XmlReaderSettings(); settings.IgnoreWhitespace = true; Telerik.Reporting.Report report = null; using (XmlReader xmlReader = XmlReader.Create(filePath, settings)) { ReportXmlSerializer xmlSerializer = new ReportXmlSerializer(); report = (Telerik.Reporting.Report)xmlSerializer.Deserialize(xmlReader); } report.DataSource = dataSource; ReportProcessor reportProcessor = new ReportProcessor(); InstanceReportSource instanceReportSource = new InstanceReportSource(); instanceReportSource.ReportDocument = report; RenderingResult result = reportProcessor.RenderReport("PDF", instanceReportSource, null); return(Convert.ToBase64String(result.DocumentBytes)); }
public async Task <string> CreateMillenniumHealthReport([FromBody] string json) { try { MillenniumHealthCaseReportData obj = Newtonsoft.Json.JsonConvert.DeserializeObject <MillenniumHealthCaseReportData>(json); ReportCreator report = new ReportCreator(); return(await report.CreateMillenniumHealthReport(obj)); }catch (Exception ex) { throw ex; } }