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中使用uploadify批量上传
- MVC中outputcache缓存
- MVC使用HandleErrorAttribute自定义异常
- mysql乐观锁与mvcc(MySQL中的乐观锁,悲观锁和MVCC全面解析)
- MVC 使用FileResult导出文件
- php入门教程环境搭建教程(PHP从零开始打造自己的MVC框架之入口文件实现方法详解)
- mvc中Scripts.Render、Styles.Render
- MVC中JSON字符长度超出限制
- mvc renderpartial
- php框架初始化教程学习(PHP从零开始打造自己的MVC框架之类的自动加载实现方法详解)
- mvc中@RenderSection()
- asp.net MVC处理流程
- MVC升级后报"当前上下文中不存在ViewBag"错的解决方法
- MVC中报get_RazorKeywords()错误的解决方法
- mvc中@helper的用法
- 鱿鱼炒蒜苔不是黑暗料理,这样做清香扑鼻,鲜美脆嫩,开胃又下饭(鱿鱼炒蒜苔不是黑暗料理)
- 蒜苔炒鱿鱼(蒜苔炒鱿鱼)
- 远离 五毛食品 洛阳80后妈妈发明的 飞行棋 成校园爆款 玩具(远离五毛食品)
- 失传的古代飞行棋游戏 六博(失传的古代飞行棋游戏)
- 感冒要吃什么药(猫咪感冒要吃什么药)
- 下雪会怎样(下雪怎样画)
热门推荐
- 微信小程序贪吃蛇大作战(微信小程序实现贪吃蛇游戏)
- ideadocker调试(Idea部署远程Docker并配置文件)
- mysql binlog日志位置(开启MySQL的binlog日志的方法步骤)
- ASP.NET将Excel数据导入到数据库
- typescript怎么加号(Typescript中的as、问号与感叹号详解)
- python设计一个聊天机器人(手把手教你使用Python创建微信机器人)
- php哪个函数具有字符串截取功能(php字符串截取函数mb_substr用法实例分析)
- mysql索引的比较规则(MySQL的Flush-List和脏页的落盘机制)
- mysql存储过程limit参数(MySQL存储过程in、out和inout参数示例和总结)
- linux下安装nginx常见问题(Linux安装Nginx步骤详解)