/// <summary> /// Método que realiza la busqueda de registros aplicando parámtros de búsqueda y paginación. /// </summary> /// <param name="specification">Parámtros de búsqueda y parámetros de paginación</param> /// <returns>Lista de entidades de tipo genérico.</returns> public List <TEntity> GetByParam(IQueryableSpecification <TEntity> specification) { List <TEntity> lstEntity = _finderRepository.GetByParam(specification).ToList(); if (lstEntity == null) { throw new GettingException(ADMCAT.L000006I); } return(lstEntity); }
public async Task <IReadOnlyList <User> > ListAsync(IQueryableSpecification <User> specification = null) { using (var ctx = new EntityFrameworkContext(_options)) { var query = ctx.Users as IQueryable <User>; if (specification != null) { query = query.Where(specification.Predicate); } return(await query.ToListAsync().ConfigureAwait(false)); } }
public Task <IReadOnlyList <User> > ListAsync(IQueryableSpecification <User> specification = null) { if (specification is null) { IReadOnlyList <User> v = _users.Values.ToList(); return(Task.FromResult(v)); } IReadOnlyList <User> result = _users.Values.Where(x => specification.IsSatisfiedBy(x)).ToList(); return(Task.FromResult(result)); }
/// <summary> /// Método para la busqueda de entidades por medio de parametros. /// </summary> /// <param name="spec">Interfaz de tipo IQueryableSpecification que contiene los parámetros de búsqueda.</param> /// <returns>Lista de entidades de tipo genérico.</returns> public IEnumerable <TEntity> GetByParam(IQueryableSpecification <TEntity> specification) { return(FindManyByAsync(specification).Result.ToList()); }