貌似普通的数组(string[] ArrayList等 )可以存在session里面  在页面之间传来传去  但是  List<T> 传进session 报错说什么序列化问题  可是我要在界面间传递List<T>数组对象  要怎么办?  我这里T类型是实体类  量很大  如果将它序列化 手工根本无法完成  还有 我只是大概知道序列化这个概念的作用  具体怎么序列化类  我不也不会  大家给点建议  我该怎么传递 List<T>数组?

解决方案 »

  1.   

    [Serializable]
    public yourClass
    {}
      

  2.   

    用session传递不是好的选择,建议使用序列号和反序列化的方法来传递。或者在a页面存入数据库,在b页面从数据库读取数据也可以,在session中只存放Id值即可。
      

  3.   

    有一百多个实体类  难道要让我手动为每个实体类前面加个[Serializable]吗?  无奈... 
      

  4.   

    不要用session传递值,因为你传递的数据量大,而session有要占用服务器内存,这样会产生性能问题。有两种选择:
    第一:将session设置成数据库模式。
    第二:直接将实体类在源也序列化保存成XML格式,在目标也反序列化取出来。
      

  5.   

    在构造函数上加上[Serializable] 
    如:public tt_class
    {}
      

  6.   

    1.
    关于 Session 与 序列化你使用了 StateServer 或者 SqlServer 来存 Session 而不是 默认的 InProc ? 前两者才要求存入 Session 的对象必须可序列化,后者存在内存是不用的2.
    有一百多个实体类  难道要让我手动为每个实体类前面加个[Serializable]吗?  无奈... ========即使是一千个,你也得加。
      

  7.   

    把你的泛型list<T>集合 设置成静态 单独写在一个类里面  
      

  8.   

    可以存储查询条件到另一个页在获取数据。如果数据量太大放Session不是解决之道
      

  9.   

    数据量大,最好的办法是传XML
      

  10.   

    高手说了,到另一页再从库里读啊,Session 只存个ID
      

  11.   

    那么大数据量,不要用session
    存到数据库里,然后再读出来吧,不然服务器会受不了的
      

  12.   

    全局静态泛型list <T>结构集合 
    或者 
    序列化的 结构函数
    或者
    序列化实体类保存成XML格式
      

  13.   

    我觉得泛型不能用在这儿吧。因为运行时VM不知道T的类型,所以无法判断它是否已经序列化,所以无法给你序列化你
      

  14.   

    在声明的上面加这个就行了[Serializable] 
    就可以序列化了
      

  15.   

    可以用json.net 生成json字符串
      

  16.   

    在类的最上方加一个特性[Serializable]
      

  17.   

    Static 方便 Ctrl+H 全部修改。
      

  18.   

    其实LZ应该把报错的内容发个完整的上来,单看LZ提供的内容无法判断是否是因为序列化造成的
      

  19.   

    List <T> 传进session 会报错吗?
    不是强转一下类型就行了吗?
      

  20.   

    不要用session传递值,因为你传递的数据量大,而session有要占用服务器内存,这样会产生性能问题。有两种选择: 
    第一:将session设置成数据库模式。 
    第二:直接将实体类在源也序列化保存成XML格式,在目标也反序列化取出来。