找回密码
 立即注册

QQ登录

只需一步,快速开始

fmyuan2000

注册会员

26

主题

58

帖子

190

积分

注册会员

积分
190

活字格认证元老葡萄

fmyuan2000
注册会员   /  发表于:2015-9-14 15:47  /   查看:21163  /  回复:10
为什么会出现   Exception of type 'System.OutOfMemoryException' was thrown.
版本号:8.35.20151.0
仅仅是打开上传的Excel文件。
spread.OpenExcel(filePath, FarPoint.Excel.ExcelOpenFlags.ColumnHeaders);



Excel 文件如下:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

10 个回复

倒序浏览
iceman
社区贡献组   /  发表于:2015-9-15 09:07:00
沙发
回复 1楼fmyuan2000的帖子

问题我已经重现了,有进一步信息反馈给您。
回复 使用道具 举报
fmyuan2000
注册会员   /  发表于:2015-9-16 10:58:00
板凳
回复 2楼iceman的帖子

可以解决么?
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2015-9-16 13:41:00
地板
回复 1楼fmyuan2000的帖子

请问当前excel的来源是什么?
Spread在加载Excel时,需要加载两部分数据,数据和格式。
当前的Excel中除了我们看到的数据,目录列还有大量的数据校验格式存在:


我尝试清除了空白部分的数据校验格式,excel见附件,可以正常加载:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
fmyuan2000
注册会员   /  发表于:2015-9-16 13:43:00
5#
Excel 文件来自,Spread 导出的文件。

现在的问题是我导出出去的文件导入不回来。我发现怎么文件的行数变了,变得特别多。 我这个文件也就60多行。这个bug 很严重啊。

我是设置了:
FarPoint.Web.Spread.ComboBoxCellType cb = new FarPoint.Web.Spread.ComboBoxCellType();

FpSpread1.ActiveSheetView.Columns[5].CellType = cb;
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2015-9-16 14:49:00
6#
回复 5楼fmyuan2000的帖子

很抱歉,目前我没能找出更好的方法来解决这个问题。目前情况来看只能采用您电话中提到的逐个单元格设置combo类型。

另外,我通过附件demo没有能重现出这个问题,能否在我的demo基础上修改重现这个问题?


Demo中代码如下:
  1. protected void Page_Load(object sender, EventArgs e)
  2.         {
  3.             if (IsPostBack)
  4.             {
  5.                 return;
  6.             }

  7.             DataTable city=new DataTable();
  8.             city.Columns.AddRange(new DataColumn[] {new DataColumn("City", typeof(string)), new DataColumn("Owner", typeof(Int32)), new
  9. DataColumn("State", typeof(string))});
  10.             city.Rows.Add(new object[] { "Atlanta", 0, "Georgia" });
  11.             city.Rows.Add(new object[] { "Boston", 1, "Mass." });
  12.             city.Rows.Add(new object[] { "Tampa", 2, "Fla." });

  13.             FarPoint.Web.Spread.ComboBoxCellType cb = new FarPoint.Web.Spread.ComboBoxCellType();
  14.             cb.DataSource = city;
  15.             cb.ShowButton = true;
  16.             cb.DataMember = "City";
  17.             cb.DataTextField = "City";
  18.             cb.DataValueField = "Owner";
  19.             cb.UseValue = true;

  20.             this.FpSpread1.ActiveSheetView.AllowPage = false;
  21.             this.FpSpread1.ActiveSheetView.Rows.Count = 100;

  22.             for (int i = 0; i < 100; i++)
  23.             {
  24.                 FpSpread1.ActiveSheetView.Cells[i, 0].Value = 2;
  25.             }


  26.             FpSpread1.ActiveSheetView.Columns[0].CellType = cb;
  27.            
  28.         }

  29.         protected void Button2_Click(object sender, EventArgs e)
  30.         {
  31.             this.FpSpread1.SaveExcel(this.Server.MapPath("1.xlsx"), FarPoint.Excel.ExcelSaveFlags.UseOOXMLFormat| FarPoint.Excel.ExcelSaveFlags.SaveAsViewed);

  32.         }

  33.         protected void Button3_Click(object sender, EventArgs e)
  34.         {
  35.             this.FpSpread1.OpenExcel(this.Server.MapPath("1.xlsx"));
  36.             this.FpSpread1.ActiveSheetView.AllowPage = false;
  37.         }
复制代码


重现后我会把这个问题反馈给产品组,看能否在后续版本中改进。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
fmyuan2000
注册会员   /  发表于:2015-9-16 14:51:00
7#
回复 6楼iceman的帖子

好的。
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2015-9-16 14:57:00
8#
回复 7楼fmyuan2000的帖子

感谢支持。谢谢
回复 使用道具 举报
fmyuan2000
注册会员   /  发表于:2015-9-16 14:59:00
9#
请使用 导出代码
this.FpSpread1.SaveExcel(this.Server.MapPath("1.xlsx"), FarPoint.Excel.ExcelSaveFlags.UseOOXMLFormat| FarPoint.Excel.ExcelSaveFlags.SaveCustomColumnHeaders);
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2015-9-16 17:57:00
10#
回复 9楼fmyuan2000的帖子

问题重现了,感谢反馈。

下来会提交给产品组,有进一步消息反馈给你。
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部