MVC 使用FileResult导出文件
类别:编程学习 浏览量:3899
时间:2015-12-8 MVC 使用FileResult导出文件
MVC 使用FileResult导出文件MVC 使用FileResult导出文件的方式
1、使用FileContentResult
// 摘要:
// 通过使用文件内容,内容类型,文件名称创建一个FileContentResult对象//
// 参数:
// fileContents:
// 响应的二进制文件内容
//
// contentType:
// 内容类型(MIME类型)
//
// fileDownloadName:
// 显示在浏览器下载窗口的文件名称//
// 返回结果:
// 文件内容对象.
protected internal virtual FileContentResult File(byte[] fileContents, string contentType, string fileDownloadName);
备注
使用时需要将文件内容转化成字节数组byte[]
byte[] fileContents = Encoding.Default.GetBytes(sbHtml.ToString());
2、使用FileStreamResult
// 其他参数描述同FileContentResult
// 参数:
// fileStream:
// 响应的流
//
// 返回结果:
// 文件流对象.
protected internal virtual FileStreamResult File(Stream fileStream, string contentType, string fileDownloadName);
备注
使用时需要将文件内容转化成流
var fileStream = new MemoryStream(fileContents);
3、使用FilePathResult
// 其他参数描述同FileContentResult
// 参数:
// fileName:
// 响应的文件路径
//
// 返回结果:
// 文件流对象.
protected internal virtual FilePathResult File(string fileName, string contentType, string fileDownloadName);
备注
使用时服务器上首先必须要有这个Excel文件,然会通过Server.MapPath获取路径返回.
二、MVC 使用FileResult导出文件实例
public FileResult ExportExcel()
{
var sbHtml = new StringBuilder();
sbHtml.Append("<table border='1' cellspacing='0' cellpadding='0'>");
sbHtml.Append("<tr>");
var lstTitle = new List<string> { "编号", "姓名", "年龄", "创建时间" };
foreach (var item in lstTitle)
{
sbHtml.AppendFormat("<td style='font-size: 14px;text-align:center;background-color: #DCE0E2; font-weight:bold;' height='25'>{0}</td>", item);
}
sbHtml.Append("</tr>");
for (int i = 0; i < 1000; i++)
{
sbHtml.Append("<tr>");
sbHtml.AppendFormat("<td style='font-size: 12px;height:20px;'>{0}</td>", i);
sbHtml.AppendFormat("<td style='font-size: 12px;height:20px;'>屌丝{0}号</td>", i);
sbHtml.AppendFormat("<td style='font-size: 12px;height:20px;'>{0}</td>", new Random().Next(20, 30) + i);
sbHtml.AppendFormat("<td style='font-size: 12px;height:20px;'>{0}</td>", DateTime.Now);
sbHtml.Append("</tr>");
}
sbHtml.Append("</table>");
//第一种:使用FileContentResult
byte[] fileContents = Encoding.Default.GetBytes(sbHtml.ToString());
return File(fileContents, "application/ms-excel", "fileContents.xls");
//第二种:使用FileStreamResult
var fileStream = new MemoryStream(fileContents);
return File(fileStream, "application/ms-excel", "fileStream.xls");
//第三种:使用FilePathResult
//服务器上首先必须要有这个Excel文件,然会通过Server.MapPath获取路径返回.
var fileName = Server.MapPath("~/Files/fileName.xls");
return File(fileName, "application/ms-excel", "fileName.xls");
}
标签:MVC
您可能感兴趣
- php框架初始化教程学习(PHP从零开始打造自己的MVC框架之类的自动加载实现方法详解)
- mvc中@helper的用法
- MVC中JS获取后台的数据
- mysql实现mvc(mysql的MVCC多版本并发控制的实现)
- MVC中使用jQuery加载分部视图(PartialView)
- mysql mvcc 底层原理(浅析MySQL - MVCC)
- MVC中使用DropDownList
- MVC使用HandleErrorAttribute自定义异常
- ASP.NET mvc异常处理的方法
- php入门教程环境搭建教程(PHP从零开始打造自己的MVC框架之入口文件实现方法详解)
- MVC中CheckBox
- mvc中Action前HttpPost的作用
- python如何编写一个用户登录系统(Python实现的登录验证系统完整案例基于搭建的MVC框架)
- mvc JavaScriptResult的用法
- windows server 2008r2怎么安装(Windows Server2008 R2 MVC 环境安装配置教程)
- MVC中获取当前action、controller
- 吉林舒兰 封城 15人确诊 276人隔离,出现跨省传播(吉林舒兰封城)
- 四月新番CP人气榜公布,《剃须》两度上榜,沙优不是女朋友(四月新番CP人气榜公布)
- 2019年外媒秋季新番动画角色CP排行榜,桐人和爱丽丝落榜(2019年外媒秋季新番动画角色CP排行榜)
- 新一小兰领衔 盘点动漫中的那些 远距离恋爱情侣(盘点动漫中的那些)
- 大事件 合肥四中火了(大事件合肥四中火了)
- 翼龙贷组织出借人调研 感受鄱阳 借 来的致富路(翼龙贷组织出借人调研)
热门推荐
- windows服务器安全设置经验(Windows 2016 服务器安全设置)
- mysql慢日志查询作用(MySQL 慢查询日志的开启与配置)
- nginx中https配置(Nginx配置同一个域名同时支持http与https两种方式访问实现)
- 阿里云rds移动数据库(阿里云跨区域服务器迁移镜像迁移,RDS数据库迁移图文教程)
- docker 默认内存(docker 运行指定内存的操作)
- jquery on绑定多个事件
- docker容器连接宿主机(docker 实现容器与宿主机无缝调用shell命令)
- python程序开发过程(python调用外部程序的实操步骤)
- mysql带log的版本(聊聊MYSQL中Redo Log是什么?)
- linux编写ftp程序(Linux实现文件上传ftp服务器脚本代码)