示例#1
0
        /// <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);
        }
示例#2
0
 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));
     }
 }
示例#3
0
        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));
        }
示例#4
0
 /// <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());
 }