Dynamically Sorting with LINQ

后端 未结 9 2018
自闭症患者
自闭症患者 2020-12-16 04:57

I have a collection of CLR objects. The class definition for the object has three properties: FirstName, LastName, BirthDate.

I have a string that reflects the name

9条回答
  •  攒了一身酷
    2020-12-16 05:41

    protected void sort_grd(object sender, GridViewSortEventArgs e)
        {
            if (Convert.ToBoolean(ViewState["order"]) == true)
            {
                ViewState["order"] = false;
    
            }
            else
            {
                ViewState["order"] = true;
            }
            ViewState["SortExp"] = e.SortExpression;
            dataBind(Convert.ToBoolean(ViewState["order"]), e.SortExpression);
        }
    
    public void dataBind(bool ord, string SortExp)
        {
            var db = new DataClasses1DataContext(); //linq to sql class
            var Name = from Ban in db.tbl_Names.AsEnumerable()
                             select new
                             {
                                 First_Name = Ban.Banner_Name,
                                 Last_Name = Ban.Banner_Project
                             };
            if (ord)
            {
                Name = BannerName.OrderBy(q => q.GetType().GetProperty(SortExp).GetValue(q, null));
            }
            else
            {
                Name = BannerName.OrderByDescending(q => q.GetType().GetProperty(SortExp).GetValue(q, null));
            }
            grdSelectColumn.DataSource = Name ;
            grdSelectColumn.DataBind();
        }
    

提交回复
热议问题