這里提供兩種下載模板的方法,第一是利用FileStream文件流下載固定的模板,第二種是利用NPOL自動生成模板
利用FileStream:
前端請求:
window.open('/controller/DownTemplate','_blank')
后端響應:
public FileStreamResult DownTemplate()
{
FileStream stream = new FileStream(Path.Combine(Server.MapPath("..\\ExcelTemplate"), "****導入模板.xlsx"), FileMode.Open, FileAccess.Read); //尋找路徑下的模板
return File(stream, "application/x-excel", "****導入模板.xlsx");
}
利用NPOL:
public ActionResultDownTemplate()
{
#region 獲取下載列表名數據 dic
List<Dictionary<string, string>> dic = new List<Dictionary<string, string>>();
.....................
.....................
#endregion
WriteToExcelDynamic("", dic, HttpContext, "***"導入模板 + DateTime.Now.ToString("yyyyMMdd") + ".xls");
return Content("");
}
public void WriteToExcelDynamic(string title, List<Dictionary<string, string>> data, HttpContextBase context, string fileName, string[] column)
{
ExcelReader.RenderToExcelDynamic(title, data, context, fileName, column); //此處方法與前一篇類似
}
