Telerik RadGrid.MasterTableView.ExportToExcel()错误:查询结果多次枚举
我有一个RadGrid,其中填充了一些数据。我有一个按钮,可以通过服务器端回调导出到Excel。服务器端代码如下。下面的错误。有什么建议吗Telerik RadGrid.MasterTableView.ExportToExcel()错误:查询结果多次枚举,telerik,radgrid,Telerik,Radgrid,我有一个RadGrid,其中填充了一些数据。我有一个按钮,可以通过服务器端回调导出到Excel。服务器端代码如下。下面的错误。有什么建议吗 RadGrid1.Rebind(); RadGrid1.ExportSettings.IgnorePaging = true; RadGrid1.MasterTableView.ExportToExcel(); 错误是: 查询结果不能枚举多次。 描述:执行当前web请求期间发生未处理的异常。请查看堆栈跟踪以了解有关错误的更多信息以及错误在代码中
RadGrid1.Rebind();
RadGrid1.ExportSettings.IgnorePaging = true;
RadGrid1.MasterTableView.ExportToExcel();
错误是:
查询结果不能枚举多次。
描述:执行当前web请求期间发生未处理的异常。请查看堆栈跟踪以了解有关错误的更多信息以及错误在代码中的起源
异常详细信息:System.InvalidOperationException:查询结果不能枚举多次
源错误:
在执行当前web请求期间生成了未经处理的异常。有关异常的起源和位置的信息可以使用下面的异常堆栈跟踪来识别
堆栈跟踪:
[InvalidOperationException:查询结果不能枚举多次。]
System.Data.Linq.SqlClient.OneTimeEnumerable1.GetEnumerator()+884205
System.Data.Linq.SqlClient.SingleResult
1.GetEnumerator()+76
System.Linq.Buffer1..ctor(IEnumerable
1源)+302
System.Linq.d_u0.MoveNext()+164
System.Linq.WhereSelectEnumerableIterator`2.MoveNext()+163
Telerik.Web.UI.GridResolveEnumerable.GetCollectionItemType(布尔noItemsInEnumerator,Type&collectionItemType,Object&collectionFirstObject)+330
Telerik.Web.UI.GridResolveEnumerable.ParseProperties()+120
Telerik.Web.UI.GridResolveEnumerable.Initialize()+16
Telerik.Web.UI.GridResolveEnumerable.EnsureInitialized()+28
Telerik.Web.UI.GridEnumerableFromDataView..ctor(GridTableView所有者、IEnumerable可枚举、布尔区分大小写、布尔自动生成列、GridColumnCollection presentColumns、String[]附加字段、布尔检索AllFields)+242
Telerik.Web.UI.GridDataSourceHelper.CreateGridEnumerable(GridTableView所有者、IEnumerable可枚举、布尔区分大小写、布尔自动生成列、GridColumnCollection presentColumns、String[]附加字段、布尔检索所有字段)+223
Telerik.Web.UI.GridDataSourceHelper.GetResolvedDataSource(GridTableView所有者、对象数据源、字符串数据成员、布尔区分大小写、布尔自动生成列、GridColumnCollection presentColumns、字符串[]附加字段、布尔检索所有字段)+595
Telerik.Web.UI.GridTableView.get_ResolvedDataSource()+243
CreateChildControls(IEnumerable数据源、布尔useDataSource)+42
System.Web.UI.WebControl.CompositeDataBoundControl.PerformDataBinding(IEnumerable数据)+72
System.Web.UI.WebControls.DataBoundControl.OnDataSourceViewSelectCallback(IEnumerable数据)+147
System.Web.UI.WebControls.DataBoundControl.PerformSelect()+261
Telerik.Web.UI.GridTableView.PerformSelect()+9
Telerik.Web.UI.GridTableView.DataBind()+363
Telerik.Web.UI.RadGrid.DataBind()+73
Telerik.Web.UI.RadGrid.AutoDataBind(GridRebindReason rebindReason)+2488
Telerik.Web.UI.RadGrid.RebindForExport()+119
Telerik.Web.UI.Grid.Export.TableViewExporter.PrepareForExport()+315
System.EventHandler.Invoke(对象发送方,EventArgs e)+0
System.Web.UI.Control.OnPreRender(EventArgs e)+11056782
System.Web.UI.Control.PreRenderRecursiveInternal()+108
System.Web.UI.Page.ProcessRequestMain(布尔includeStagesBeforeAsyncPoint,布尔includeStagesAfterAsyncPoint)+3394
您不希望在导出之前调用
Rebind()
。这有什么原因吗?您是否在导出之前更改/操作数据
如果不是,则不需要调用Rebind()
,因为这实际上只是为了刷新数据源