예제 #1
0
        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;
        }
예제 #2
0
        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;
        }
예제 #3
0
        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();
        }