protected void gv_onSorting(object sender, GridViewSortEventArgs e) { SortDirection sortDirection = SortDirection.Ascending; bool descending = false; if (ViewState[e.SortExpression] == null) { descending = false; } else { descending = !(bool)ViewState[e.SortExpression]; } ViewState[e.SortExpression] = descending; sortDirection = descending ? SortDirection.Descending : SortDirection.Ascending; ViewState[e.SortExpression] = descending; Expression <Func <CRM.Data.Entities.SecUser, bool> > predicate = buildPredicate(); IQueryable <CRM.Data.Entities.SecUser> secUsers = SecUserManager.GetUsers(predicate); if (sortDirection == SortDirection.Descending) { switch (e.SortExpression) { case "Username": gvUsers.DataSource = secUsers.OrderByDescending(x => x.UserName).ToList(); break; case "LastName": gvUsers.DataSource = secUsers.OrderByDescending(x => x.LastName).ToList(); break; case "FirstName": gvUsers.DataSource = secUsers.OrderByDescending(x => x.FirstName).ToList(); break; ////default: //// gvUsers.DataSource = secUsers.OrderByDescending(x => x.SecRole.RoleName).ToList(); //// break; } //.orderByNested(e.SortExpression, sortDirection); gvUsers.DataBind(); } else { gvUsers.DataSource = secUsers.orderBy(e.SortExpression).ToList();//.orderByNested(e.SortExpression, sortDirection); gvUsers.DataBind(); } ViewState["lastSortExpression"] = e.SortExpression; ViewState["lastSortDirection"] = descending; }
private void DoBind() { Expression <Func <CRM.Data.Entities.SecUser, bool> > predicate = buildPredicate(); IQueryable <CRM.Data.Entities.SecUser> secUsers = SecUserManager.GetUsers(predicate); gvUsers.DataSource = secUsers.ToList(); //.orderByExtension("LastName", false); gvUsers.DataBind(); // clear Session["UID"] = null; }
protected void gvUsers_PageIndexChanging(object sender, GridViewPageEventArgs e) { SortDirection sortDirection = SortDirection.Ascending; string lastSortExpression = ViewState["lastSortExpression"] == null ? "LastName" : ViewState["lastSortExpression"].ToString(); bool descending = ViewState["lastSortDirection"] == null ? false : (bool)ViewState["lastSortDirection"]; sortDirection = descending ? SortDirection.Descending : SortDirection.Ascending; Expression <Func <CRM.Data.Entities.SecUser, bool> > predicate = buildPredicate(); IQueryable <CRM.Data.Entities.SecUser> secUsers = SecUserManager.GetUsers(predicate); gvUsers.PageIndex = e.NewPageIndex; gvUsers.DataSource = secUsers.ToList();//orderByNested(lastSortExpression, sortDirection); gvUsers.DataBind(); }