c# – 在PostBack之后在GridView中保留DataSource
发布时间:2020-12-15 17:45:51 所属栏目:百科 来源:网络整理
导读:所以我在ASPX页面中有一个GridView. 当我点击 asp:Button id =“btnBindIt”runat =“server”/它绑定数据表如下: theDataTable = GetAllTheRecords();gvTheGridView.DataSource = theDataTable;gvTheGridView.DataBind(); 注意:theDataTable是一个成员 p
所以我在ASPX页面中有一个GridView.
当我点击< asp:Button id =“btnBindIt”runat =“server”/>它绑定数据表如下: theDataTable = GetAllTheRecords(); gvTheGridView.DataSource = theDataTable; gvTheGridView.DataBind(); 注意:theDataTable是一个成员 private DataTable theDataTable; 这按预期工作. 现在,在很好地显示GridView之后,我想将数据导出为CSV,所以现在我点击< asp:Button id =“btnExportIt”runat =“server”/>运行代码: exportToCsv(theDataTable); 但是theDataTable为null. 所以我试过了 exportToCsv(gvTheGridView.DataSource) 哪个也是null. 持久化这些数据的标准方法是什么?我真的不想再次点击数据库,因为它是一个很长的SPROC并且用户已经等了一次. 提前致谢! 解决方法
类级变量无法在回发时保持其值.
但是有两种方法可以在页面的PostBack上维护数据:ViewState和Session State. ViewState["theDataTable"] = theDataTable; Session["theDataTable"] = theDataTable; 然后你可以在页面上回访它: DataTable theDataTable = (DataTable)ViewState["theDataTable"]; DataTable theDataTable = (DataTable)Session["theDataTable"]; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |