public static async Task CreatePdfImpl(string conversionId, PdfParameters parameters) { try { var pdf = await CreatePdf.CreatePdfSync(parameters); lock (Jobs) lock (_pdfs) { Jobs[conversionId].status = ConversionJob.Status.Done; _pdfs.Add(conversionId, pdf); } } catch (Exception e) { Console.WriteLine($"{conversionId}: Exception in CreatePdf.CreatePdfSync:"); Console.WriteLine(e); lock (Jobs) { if (Jobs.ContainsKey(conversionId)) { Jobs[conversionId].status = ConversionJob.Status.Error; } } } }
public async Task <IActionResult> CreatePdfSync([FromBody] PdfParameters parameters) { var pdf = await CreatePdf.CreatePdfSync(parameters); return(new FileStreamResult(pdf, "application/pdf") { FileDownloadName = "document.pdf" }); }