自定义了一个控件.
其中需要在控件中暂时保存输入的数据.数据保存在DataTable中.
可是由于ViewStat中不支持DataTable的序列化.请问如何解决此问题

解决方案 »

  1.   

    在viewstate建立datatable            DataTable dt1 = new DataTable("Table1");
                dt1.Columns.Add("品名");
                dt1.Columns.Add("规格");
                dt1.Columns.Add("规格ID");
                dt1.Columns.Add("表色ID");
                dt1.Columns.Add("表色");
                dt1.Columns.Add("单位ID");
                dt1.Columns.Add("单位");
                dt1.Columns.Add("数量");
                dt1.Columns.Add("箱数");
                dt1.Columns.Add("客户品名");
                dt1.Columns.Add("客户规格");
                dt1.Columns.Add("客户产品编码");
                this.ViewState.Add("myDataTable", dt1);
    从viewstate取回datatalbe DataTable dt1 = (DataTable)this.ViewState["myDataTable"]; 然后就可以用了
      

  2.   

    在viewstate建立datatable            DataTable dt1 = new DataTable("Table1");
                dt1.Columns.Add("品名");
                dt1.Columns.Add("规格");
                dt1.Columns.Add("规格ID");
                dt1.Columns.Add("表色ID");
                dt1.Columns.Add("表色");
                dt1.Columns.Add("单位ID");
                dt1.Columns.Add("单位");
                dt1.Columns.Add("数量");
                dt1.Columns.Add("箱数");
                dt1.Columns.Add("客户品名");
                dt1.Columns.Add("客户规格");
                dt1.Columns.Add("客户产品编码");
                this.ViewState.Add("myDataTable", dt1);
    从viewstate取回datatalbe DataTable dt1 = (DataTable)this.ViewState["myDataTable"]; 然后就可以用了
      

  3.   

    上面的作法,存储一次是可以的,如果再存储一次(PostBack),就会冲掉前次存的数据.