【问题标题】:Custom sorting object datasource bound gridview自定义排序对象数据源绑定gridview
【发布时间】:2010-07-19 06:20:31
【问题描述】:

我想对绑定到对象DataSource 获取业务对象的GridView 进行排序。我已经实现了自定义分页 & 现在想要实现排序。刚刚阅读了这篇文章,但是 SQL Query 有很多连接。

还有其他优雅的解决方案吗?

http://aspnet.4guysfromrolla.com/articles/032206-1.aspx#

【问题讨论】:

    标签: c# asp.net data-binding objectdatasource


    【解决方案1】:

    使用.DefaultView 排序怎么样?以下是grd_Sorting 事件。

    DataView dv = dt.DefaultView;//Your datatable, dt.
    dv.RowFilter = "";//Set row filter to none.
    if ((strSortBy != null) && (strSortAscending != null))
        dv.Sort = strSortBy/*Column name*/ + " " + strSortAscending /*ASC, for instance.*/;
    
    grd.DataSource = dv;
    grd.DataBind();
    

    【讨论】:

    • 您好,我的对象数据源返回带有自定义业务对象的 List。这个解决方案能用吗?我也在使用自定义分页数据(例如每个 gridview 页面 10 个对象)
    • @Popo:在这种情况下,我会为我的自定义对象实现一个 IComparable。见switchonthecode.com/tutorials/…
    • 感谢您的回复。但是,这意味着仅对 10 条记录进行排序,而不是对数据库中的所有记录进行排序(查询仅获取每个 gridview 页面的 10 行,因此对它们进行排序不是我要寻找的)。我认为它只可能在数据库级别。
    【解决方案2】:

    使用动态 where 子句在查询级别解决它。

    【讨论】:

      猜你喜欢
      • 2012-09-14
      • 2012-09-20
      • 1970-01-01
      • 2011-07-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-28
      相关资源
      最近更新 更多