private PagedData<Task> GetSortedOnServerTasks(IQuery<Task, TaskInclude, TaskFilter, TaskSorter> query, int pageSize, int pageNumber, TaskListColumns column, SortDirection direction)
        {
            query.WithPaging(pageSize, pageNumber);

            switch (column)
            {
                case TaskListColumns.Title:
                    {
                        query.Sort(x => x.ByTitle(direction));
                        break;
                    }
                case TaskListColumns.Date:
                    {
                        query.Sort(x => x.ByDateModified(direction));
                        break;
                    }
                case TaskListColumns.Type:
                    {
                        query.Sort(x => x.ByType(direction));
                        break;
                    }
                case TaskListColumns.Size:
                    {
                        query.Sort(x => x.BySize(direction));
                        break;
                    }
                case TaskListColumns.Urgency:
                    {
                        query.Sort(x => x.ByUrgency(direction));
                        break;
                    }
                case TaskListColumns.EstimatedPrice:
                    {
                        query.Sort(x => x.ByEstimatedPrice(direction));
                        break;
                    }
                case TaskListColumns.Deadline:
                    {
                        query.Sort(x => x.ByDeadline(direction));
                        break;
                    }
            }

            return TaskService.GetAll(query);
        }
 private PagedData<Task> GetTasksWithoutSorting(IQuery<Task, TaskInclude, TaskFilter, TaskSorter> query, int pageSize, int pageNumber)
 {
     return TaskService.GetAll(query.WithPaging(pageSize, pageNumber));
 }
        private PagedData<Task> GetSortedOnServerTasks(IQuery<Task, ReportInclude, ReportFilter, ReportSorter> query, int pageSize, int pageNumber, ReportListColumns column, SortDirection direction)
        {
            query.WithPaging(pageSize, pageNumber);

            switch (column)
            {
                case ReportListColumns.Title:
                    {
                        query.Sort(x => x.ByTitle(direction));
                        break;
                    }

                case ReportListColumns.ProjectName:
                    {
                        query.Sort(x => x.ByProject(direction));
                        break;
                    }
                case ReportListColumns.Step:
                    {
                        query.Sort(x => x.ByType(direction));
                        break;
                    }

            }
            return TaskService.GetAll(query);
        }