Ejemplo n.º 1
0
        public IEnumerable <DropdownTuple> GetFilterDropDownValues(PersonFilterBy filterBy)
        {
            switch (filterBy)
            {
            case PersonFilterBy.NoFilter:
                return(new List <DropdownTuple>());

            case PersonFilterBy.Project:
                return(_db.Projects.Select(s => new DropdownTuple
                {
                    Text = s.Description,
                    Value = s.Id.ToString()
                }));

            default:
                throw new ArgumentOutOfRangeException(nameof(filterBy), filterBy, null);
            }
        }
Ejemplo n.º 2
0
        public static IQueryable <Person> FiltePersonBy(
            this IQueryable <Person> persons,
            PersonFilterBy filterBy, string filterValue)
        {
            if (string.IsNullOrEmpty(filterValue))
            {
                return(persons);
            }

            switch (filterBy)
            {
            case PersonFilterBy.NoFilter:
                return(persons);

            case PersonFilterBy.Project:
                Guid pid = Guid.Parse(filterValue);
                return(persons.Where(x =>
                                     x.ProjectLink.Any(s => s.ProjectId == pid)));

            default:
                throw new ArgumentOutOfRangeException
                          (nameof(filterBy), filterBy, null);
            }
        }