Перенаправление на другую страницу после вызова Response.End () в C #
Я экспортирую gridview в Excel, использую .Net 4.0 в веб-приложении, при загрузке страницы и необходимости создания файла, а затем перенаправления страницы на вызывающую страницу. Я сталкиваюсь с проблемами, потому что мой код для экспорта в Excel выглядит следующим образом:
gvSummary.Style.Add("font-size", ".6em");
Response.Clear();
string attachment = "attachment; filename=filename.xls";
Response.ClearContent();
Response.AddHeader("content-disposition", attachment);
Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
StringWriter sw = new StringWriter();
HtmlTextWriter htw = new HtmlTextWriter(sw);
gvSummary.GridLines = GridLines.Horizontal;
gvSummary.RenderControl(htw);
Response.Write(sw.ToString());
Response.End();
Я знаю, что если я поставлю Response.Redirect () перед .End (), я буду перенаправлен, но файл никогда не будет создан, и если я поставлю Response.Redirect () после .End (), я получу файл но без перенаправления.
Код, написанный выше, прекрасно работает при генерации файла, однако, когда файл сгенерирован, я все еще застреваю при просмотре анимации загрузки, потому что не могу вырваться из страницы. Есть идеи?