我想我发现了:D,错误的数据:D - steve jobs
我有一个数据表对象我想将它存储在Viewstate中但有时会发生错误(不常见)
Error: Sys.WebForms.PageRequestManagerServerErrorException: Error serializing value 'Table1' of type 'System.Data.DataTable.'
任何帮助请
答案 0 :(得分:1)
您面临的问题是因为数据表的大小。
在ViewState中存储数据表不是一个好习惯,因为它会增加页面大小并降低性能,同时ViewState也可以在客户端解密,因此DataTable不安全。
您可以通过会话或更好地从缓存中执行此操作,如果没有经常使用,我建议您从数据库中重新查询。
答案 1 :(得分:0)
使用Session存储DataTable,因为Viewstate在存储大型对象(如DataTable)时效率不高,因为它们包含在每个服务器请求中。
Session[dt] = datatableobj;