当前位置:编程学习 > C#/ASP.NET >>

关于Session的储存表格的问题?

                DataTable dt = Session["FileQuery"] as DataTable;
                    dt.Columns.Remove("rownumber");
                    dt.Columns.Remove("docid");
                    dt.Columns.Remove("url");


第一次执行的时候是对的,第二次执行是错误的(报rownumber不属于table)


难道 dt.Columns.Remove("rownumber");影响到了Session["FileQuery"] 中的值了吗?


谢谢 --------------------编程问答-------------------- 应该是影响到了, Session["FileQuery"] 值的类型是引用类型的,复制过去的时候 需要深度复制 --------------------编程问答--------------------                 DataTable dt = (Session["FileQuery"] as DataTable).Copy();
                    dt.Columns.Remove("rownumber");
                    dt.Columns.Remove("docid");
                    dt.Columns.Remove("url");

该成这样 --------------------编程问答-------------------- 你是怎么保存到sesseion呢? --------------------编程问答-------------------- Session保存的只是引用而已,1楼是对的
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,