【发布时间】:2015-06-18 07:10:16
【问题描述】:
在我的项目中,用户可以搜索学校学生的详细信息并将其导出到 Excel。我正在使用OpenOfficeXMl 来实现这一目标。
单击搜索按钮后,excel 将与数据一起下载。
excel下载完成后是否可以重定向到另一个页面。
我将数据分配给数据表,然后将其提取到 excel 中,如下所示。
using (ExcelPackage pck = new ExcelPackage())
{
ExcelWorksheet ws = pck.Workbook.Worksheets.Add("PData");
ws.Cells["A1"].LoadFromDataTable(p_data, true);
Response.Clear();
Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
Response.AddHeader("content-disposition", "attachment; filename=School-" + DateTime.Now + "-file" + ".xlsx");
Response.BinaryWrite(pck.GetAsByteArray());
Response.End();
}
是否可以在Response.End() 之后执行return View() 或Redirect?
编辑
下载 excel 后,我需要导航到另一个页面以显示在 excel 中导出的相同数据。喜欢return View(Data)
其中Data 是IpagedList 对象
【问题讨论】:
-
自从我编写 Web 应用程序以来已经很久了,但是据我所知,在
Response.End()之后你不能使用任何Response对象方法。为什么不在using之后执行 Response.Redirect() 并从那里删除Response.End()? -
我认为这可以帮助你...stackoverflow.com/questions/13065697/…
-
@ZoharPeled 感谢您的回复..在
Response.Redirect()它需要指定一个 url..这里我的要求是我需要显示一个页面,其中包含导出到 excel 的相同详细信息..例如返回View(data)其中data是 iagedList 项
标签: c# asp.net-mvc redirect