public async Task <IActionResult> DetailPdf(int orderId)
        {
            var viewResult = await Detail(orderId) as ViewResult;

            var viewName = "Order/Detail_Doc";
            var html     = await _viewRenderService.RenderToStringAsync(viewName, viewResult.Model);

            //var uri = new Uri(Url.Action("Detail", "Order", new { orderId = orderId }));

            // Create a PDF from any existing web page
            var Renderer = new IronPdf.HtmlToPdf();
            //var PDF1 = await Renderer.RenderUrlAsPdfAsync(uri);
            var PDF = await Renderer.RenderHtmlAsPdfAsync(html);


            return(File(PDF.BinaryData, "application/pdf", "Catalog.pdf"));
        }
        public async Task <IActionResult> DetailPdf(int orderId)
        {
            var viewModel = await _mediator.Send(new GetOrderDetails(User.Identity.Name, orderId));

            if (viewModel == null)
            {
                return(BadRequest("No such order found for this user."));
            }
            var html = await _viewRenderService.RenderToStringAsync("Order/Detail_Doc", viewModel);

            IronPdf.HtmlToPdf Renderer = new IronPdf.HtmlToPdf();
            var pdfDoc = await Renderer.RenderHtmlAsPdfAsync(html);

            return(File(pdfDoc.BinaryData, "application/pdf", $"order{orderId}.pdf"));

            // var viewResult = await Detail(orderId) as ViewResult;
            // var renderedView = await viewRenderService.RenderToStringAsync(viewResult.ViewName, viewResult.Model);
        }