public ActionResult SendInvoiceReport(IList <Guid> invoiceIds) { if (invoiceIds == null || invoiceIds.Count == 0) { Response.StatusCode = 400; return(Json(new { success = false, message = "No invoices selected" }, JsonRequestBehavior.AllowGet)); } var invoiceList = invoiceRepository.FindByIds(invoiceIds); var sendResults = invoiceList.AsParallel().WithDegreeOfParallelism(10).Select(SendInvoice).ToList(); // Solves net::ERR_RESPONSE_HEADERS_MULTIPLE_CONTENT_DISPOSITION error Response.ClearHeaders(); return(Json(new { success = true, results = sendResults })); }