Beispiel #1
0
        private static Tuple <bool, bool> GetActiveStates(IBaseListViewModel model, HttpContext httpContext, string name)
        {
            var  queryStringValues = HttpUtility.ParseQueryString(httpContext.Request.QueryString.ToString());
            bool active;
            var  orderByDesc = model.OrderByDesc;

            if (queryStringValues.HasKeys() && queryStringValues.AllKeys.Contains("sortBy"))
            {
                var currentSortBy = queryStringValues["sortBy"];
                active = currentSortBy.Equals(name, StringComparison.OrdinalIgnoreCase);

                if (queryStringValues.AllKeys.Contains("sortDescending"))
                {
                    orderByDesc = queryStringValues["sortDescending"].ToBoolean();
                }
            }
            else
            {
                active = model.DefaultOrderBy.Equals(name, StringComparison.OrdinalIgnoreCase);
            }

            return(new Tuple <bool, bool>(active, orderByDesc));
        }
Beispiel #2
0
        private static bool InverseSortingDirection(IBaseListViewModel model, HttpContext httpContext, string name)
        {
            var states = GetActiveStates(model, httpContext, name);

            return(states.Item1 & !states.Item2);
        }