GridView的数据源为List<UserInfo>, UserInfo类包含了Uname, UPhone等属性,通过SqlDataReader读出数据,存为List<UserInfo>,那现在需要开启GridView的排序,问题时如何对List<UserInfo>中的Uname或Uphone等排序呢?

解决方案 »

  1.   

    设置绑定列SortExpression="字段名"
    OnSorting调用后台事件重写sql语句,按该字段排序,再绑定数据源
      

  2.   

    只有重写SQL语句吗?那还不如直接让GridView绑定DataSet得了。没有别的办法了吗?我主要是想SqlDataReader比SqlDataAdapter的效率要高点,虽然代码会多些,不知道我的想法是不是错了呢?
      

  3.   

    那还不如直接让GridView绑定DataSet得了
    -----------
    为什么不能重写sql语句?
    在绑定前对数据源进行排序性能要好些
    楼主说的排序是什么意思?
      

  4.   

    主要是考虑到大数据量时,反复的读取数据库可能效率不会太好,所以我有Cache数据,这样排序我只想在缓存中的数据排序,就是直接对Cache中的泛型数组中的类的属性值排序。如果不行的话,还是直接用SqlDataAdapter取DataSet得了,省得麻烦。