首页 > 代码库 > MVC 使用FileResult导出Excel数据文件

MVC 使用FileResult导出Excel数据文件

FileResult 是一个抽象类,继承自 ActionResult。我们可以使用它的子类向客户端发送文件。

最近项目中需要对某个表格导出位Excel为表格,正好使用了到它,将列表数据构造为html的Table即可。

chrom下没问题,其他浏览器兼容性还未测试,先记录下来。在controler中定义如下:

public FileResult HtmlTOExcel(List<Survery> surveryList)        {            var sbHtml = new StringBuilder();            Html.Append("<table border=‘1‘ cellspacing=‘0‘ cellpadding=‘0‘>");            Html.Append("<tr>");            var list= new List<string> { "编号", "题目", "创建时间" };            foreach (var item in list)            {                Html.AppendFormat("<td>{0}</td>", item);            }            Html.Append("</tr>");            foreach (var s in surveryList)            {                Html.Append("<tr>");                Html.AppendFormat("<td>{0}</td>", s.Id);                Html.AppendFormat("<td>{0}</td>", s.Title);                Html.AppendFormat("<td>{0}</td>", DateTime.Now);                Html.Append("</tr>");            }            Html.Append("</table>");            //使用FileContentResult            byte[] fileContents = Encoding.Default.GetBytes(Html.ToString());            string filename="调查列表"+DateTime.Now.tos("yyyy-MM-dd")+".xls";            return File(fileContents, "application/ms-excel",filename);       }

 

MVC 使用FileResult导出Excel数据文件