public void Report(String url, DesktopResponse dr) { var reportController = new ReportController(); var qry = HttpUtility.ParseQueryString(Search?.ToLowerInvariant()); /* /export/{id} */ var urlParts = url.ToLowerInvariant().Split('/'); var rep = qry.Get("rep"); var baseUrl = qry.Get("base"); var format = qry.Get("format"); var id = urlParts[urlParts.Length - 1]; if (urlParts[1] == "export") { DesktopReport ri = new DesktopReport() { Report = rep, Base = baseUrl, Id = id, Format = format, UserId = UserId, TenantId = TenantId, CompanyId = CompanyId, AddContentDisposition = true }; reportController.ExportDesktop(ri, dr).Wait(); } else if (urlParts[1] == "print") { DesktopReport ri = new DesktopReport() { Report = rep, Base = baseUrl, Id = id, Format = "pdf", UserId = UserId, TenantId = TenantId, CompanyId = CompanyId, AddContentDisposition = false }; reportController.ExportDesktop(ri, dr).Wait(); } }