Я работала в подобную проблему при попытке экспорта в XLS и PDF, единственный, что, кажется, улучшить время отклика посылает ответ непосредственно из класса, который генерирует файл как:
HttpContext.Current.Response.Clear();
HttpContext.Current.Response.ClearContent();
HttpContext.Current.Response.ClearHeaders();
HttpContext.Current.Response.Buffer = true;
HttpContext.Current.Response.BufferOutput = true;
HttpContext.Current.Response.ContentType = "application/pdf";
HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment;filename=" + file + ".pdf");
HttpContext.Current.Response.BinaryWrite(stream.ToArray());
HttpContext.Current.Response.Flush();
stream.Close();
HttpContext.Current.Response.End();
Но если вы сделаете это, вы получите "not all code paths return a value"
от ActionMethod, чтобы избежать этого, мы просто отправить:
return new EmptyResult();
Эта последняя строка не будет на самом деле никогда не будет выполнено, так как мы в конце концов запрос непосредственно на методе.
Отлично, спасибо :-) – Coppermill