Exemple #1
0
        public Task <IEnumerable <HeroEntity> > GetByFilter(HeroFilterApiModel model)
        {
            IQueryable <HeroEntity> entities = _repository.Table
                                               .Where(e => String.IsNullOrEmpty(model.Name) || e.UserName.StartsWith(model.Name))
                                               .Where(e => !model.MinCreationTime.HasValue || e.Created > model.MinCreationTime.Value)
                                               .Where(e => !model.MaxCreationTime.HasValue || e.Created < model.MaxCreationTime.Value)
                                               .OrderBy(e => e.UserName)
                                               .GetRange(model);

            return(Task.FromResult <IEnumerable <HeroEntity> >(entities));
        }
Exemple #2
0
        public async Task <IActionResult> GetAllAsync([FromQuery] HeroFilterApiModel filterModel)
        {
            try
            {
                var models = await _service.GetAllAsync(filterModel);

                return(Ok(models));
            }
            catch (Exception ex)
            {
                return(StatusCode(500, ex.Message));
            }
        }
Exemple #3
0
        public async Task <IEnumerable <HeroGetMinApiModel> > GetAllAsync(HeroFilterApiModel filterModel)
        {
            IEnumerable <HeroEntity> entities;

            if (filterModel?.OptionFilter == false)
            {
                entities = await _repository.GetAll(filterModel);
            }
            else
            {
                entities = await _repository.GetByFilter(filterModel);
            }

            return(_dataAdapter.Parse <HeroEntity, HeroGetMinApiModel>(entities));
        }