Пример #1
0
        public async Task <IEnumerable <Student> > FilterAsync(StudentFilter filter, bool track = false)
        {
            var query = _context.Students.OrderBy(s => s.CreatedAt).AsQueryable();

            if (!track)
            {
                query = query.AsNoTracking();
            }

            if (filter.FullObject)
            {
                query = FullStudentQuery().Invoke(query);
            }

            query = filter.ApplyToQuery(query);

            return(await query.ToListAsync());
        }