在MVC控制器导出Excel时遇到一个问题,当我关闭流时,无法导出Excel文件
代码: MemoryStream ms = bll.GetOrdersExcel(info, ul, filePath,tempPath);
  try
            {
                {
                    if (ms == null)
                    {
                        return Content("导出Excel异常,请联系客服", "text/html");
                    }
                    else
                    {
                        flag = true;
                        ms.Seek(0, SeekOrigin.Begin);
                        return File(ms , "application/ms-excel", fileName);
                    }
                }
            }
            catch (Exception ex)
            {
                LogWrite.Logger("FileExportExcel:" + ex.Message.ToString(), LogEnum.Error);
                return Content("导出Excel异常,请联系客服", "text/html");
            }
            finally
            {
                if (flag)
                {
                    System.IO.File.Delete(System.Web.HttpContext.Current.Server.MapPath(filePath));
                }
                ms.Dispose();
            }
这样写一直报错,因为return 的时候 ms流已经背dispose()了,所以会导致无法找到关闭的流的错误,
找了半天的办法,发现这个问题很简单,只要将ms 用中间量存下来即可,
   byte[] mst = ms.ToArray();//转为byte数组以便于关闭ms
然后将return File(ms , "application/ms-excel", fileName); 改为return File(mst , "application/ms-excel", fileName);就可以了

如果大家有更好的办法欢迎留言,共同学习!

关于MVC控制器导出Excel时MemoryStream流已关闭的问题相关推荐

  1. c# .NET 使用MVC控制器导出Excel并打开

    在MVC控制器中打开文件,需要用FileResult作为控制器的返回值 /// <summary>/// 导出Excel/// </summary>/// <return ...

  2. EasyPOI 根据模板导出excel时,无法自适应行高得解决方案记录

    目录 EasyPOI 根据模板导出excel时,无法自适应行高得解决方案记录 首先说一下问题得场景 第一步 第二步 第三步 第四步 第五步 第六步 第七步 (就是这个方法!) EasyPOI 根据模板 ...

  3. 关于PHPExcel导出Excel时身份证,数字会导出为科学计数的处理方法

    原文:关于PHPExcel导出Excel时身份证,数字会导出为科学计数的处理方法 上次在开发一个项目时,用到PHPExcel导出数据,其中有导出身份证等长串数字时导出的Excel中显示为科学计数方式. ...

  4. java导出excel文件名_怎么解决java导出excel时文件名乱码

    怎么解决java导出excel时文件名乱码 发布时间:2020-06-19 16:59:00 来源:亿速云 阅读:137 作者:元一 java解决导出Excel时文件名乱码的方法示例:String a ...

  5. MySQL使用Navicat导出Excel时数字展示会变成科学计数法

    问题描述:MySQL使用Navicat导出Excel时数字会变成科学计数法 解决方法:"数据" 类型需要在导出时转成 "字符串" 类型 select CONCA ...

  6. excel php 数字科学计数_PHP导出excel时数字变为科学计数的解决方法

    在数据导出到excel时数字格式不对,一般分为以下两种情况. 1.excel单元格设置长度不够 解决方法: $objActSheet = $objPHPExcel->getActiveSheet ...

  7. java导出excel 乱码_java导出excel时出现文件名乱码解决方法

    java解决导出Excel时文件名乱码的方法示例:(推荐:java视频教程)String agent = request.getHeader("USER-AGENT").toLow ...

  8. java excel中重复数据 事务处理_Java导出excel时合并同一列中相同内容的行思路详解...

    一.有时候导出Excel时需要按类别导出,一大类下好几个小类,小类下又有好几个小小类,就像下图: 要实现这个也不难, 思路如下:按照大类来循环,如上就是按照张江校区.徐汇校区.临港校区三个大类循环,然 ...

  9. 报表导出HTML格式怎么转换为EXCEL,使用html导出excel时的格式问题

    用写html的方法导出excel时,excel会自动把一些格式转换一下,有时达不预期的效果,此时可以通过样式进行调整下数据格式就可以了. 常用的几种: mso-number-format:\@ 文本 ...

最新文章

  1. IUSR_ 计算机名和IWAM_ 计算机名帐户的用户名和密码
  2. v-for遍历数组 || v-for遍历对象
  3. mybatis入门常见错误
  4. 妙用Python内置函数int()快速计算等比数列前n项和
  5. error:bucket is protected
  6. 面向对象15:单例设计模式、main方法的使用
  7. c++ 取整_MPIP Raw转Raw图简述-C实现
  8. wordpress后台出现404
  9. 《C程序设计语言》笔记 目录
  10. 创维广电服务器无线,创维电视与电脑无线投屏条件
  11. python飞机大战项目概述需求_飞机大战需求分析报告.doc
  12. HCDA学习笔记(二)
  13. hdoj 5934 强连通分量+缩点 模版题(Java版)
  14. 风暴数码论坛教程--初识Android
  15. 计算机图形化编程命令,第三课图形化编程教学设计
  16. 利用 Python 特性在 Jinja2 模板中执行任意代码
  17. 电脑鼠标右键失效linux,鼠标右键失灵,教你win7电脑鼠标右键失灵的应对办法
  18. 更改系统时区为东八区
  19. 2021计算机考研科目时间表,2021计算机考研科目408有哪些?
  20. 由浅入深了解机械键盘:各种轴的区别

热门文章

  1. 中亦安图通过创业板注册:年营收近12亿 拟募资6亿
  2. 老毛桃U盘启动,装Linux
  3. 使用 ffmpeg 转换视频格式 mp4 webm
  4. Algorithm negotiation fail解决
  5. 二维数组 Arrays
  6. linux shell脚本 字符串、整数、小数判断
  7. 淘宝购物折扣秒杀分享群淘宝红包怎么抢
  8. 社群运营中品牌化和IP化运营实践
  9. CL210管理存储--管理共享文件系统
  10. vue实现调查问卷一页一题,上一题下一题形式