C#学习教程:如何在gridview中对日期列进行排序?分享


如何在gridview中对日期列进行排序?

我正在使用ASP.NET和C#。这是我的代码。

private const string ASCENDING = "ASC"; private const string DESCENDING = "DESC"; public SortDirection GridViewSortDirection { get { if (ViewState["sortDirection"] == null) ViewState["sortDirection"] = SortDirection.Ascending; return (SortDirection) ViewState["sortDirection"]; } set { ViewState["sortDirection"] = value; } } public string SortExpression { get { if (ViewState["sortExpression"] == null) ViewState["sortExpression"] = "JobNumber"; return ViewState["sortExpression"] as string; } set { ViewState["sortExpression"] = value; } } protected void OnSorting(object sender, GridViewSortEventArgs e) { SortExpression = e.SortExpression; if (GridViewSortDirection == SortDirection.Ascending) { GridViewSortDirection = SortDirection.Descending; } else { GridViewSortDirection = SortDirection.Ascending; } BindGrid(); } 

我正在应用所有列的排序和工作正常。 但是对于日期列,它就像这个顺序(dd / mm / yyyy)。

此列的数据类型是date。

怎么做?我做错了吗?

有两种选择

1.要在SQL Level中排序,这是最好和最合适的方法,将结果结果集绑定到gridview。

2.将DataTable与查询输出绑定并对datatable运行排序,然后将其绑定到gridview。 请记住将数据类型添加到datatable列accTable.Columns.Add("Date",typeof(DateTime));

数据库中此列的数据类型是什么? 它似乎就像一个字符串字段而不是DateTime字段。 如果是这种情况,您需要先修复数据类型,然后才能获得正确的排序顺序,而无需更改gridview上的任何内容。

试着改变

  

上述就是C#学习教程:如何在gridview中对日期列进行排序?分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—猴子技术宅(www.ssfiction.com)

     

本文来自网络收集,不代表猴子技术宅立场,如涉及侵权请点击右边联系管理员删除。

如若转载,请注明出处:https://www.ssfiction.com/ckf/1031922.html

发表评论

邮箱地址不会被公开。 必填项已用*标注