public Pagination <GetFeatureDto> Execute(FeatureQuery request) { var query = Context.Features.AsQueryable(); if (request.Name != null) { query = query.Where(f => f.Name.ToLower().Contains(request.Name.ToLower())); } var totalCount = query.Count(); query = query.Skip((request.PageNumber - 1) * request.PerPage).Take(request.PerPage); var pagesCount = (int)Math.Ceiling((double)totalCount / request.PerPage); return(new Pagination <GetFeatureDto> { Total = totalCount, CurrentPage = request.PageNumber, Pages = pagesCount, Data = query.Select(f => new GetFeatureDto { Name = f.Name }) }); }
public IActionResult Get([FromQuery] FeatureQuery query) { try { return(Ok(getFeaturesCommand.Execute(query))); } catch (EntityNotFoundException) { return(NotFound()); } }
public IEnumerable <GetPostFeatureDto> Execute(FeatureQuery query) { return(Context.Posts.Include(pf => pf.PostFeatures) .ThenInclude(p => p.Post).AsQueryable() .Select(pf => new GetPostFeatureDto { Id = pf.Id, FuelId = pf.FuelId, ModelId = pf.ModelId, Name = pf.PostFeatures.Select(f => f.Feature.Name).ToString(), UserId = pf.UserId })); }
public ActionResult GetDynamicFeature(string chaintypename, int chainid, long chainindex, int featureid, string path) { Result result; if (GetChainType(chaintypename, out var chainType)) { if (_node.ChainManager.GetChain(chainType, chainid, (uint)chainindex) is FeatureChain featureChain) { var queryHandler = featureChain.GetFeatureQueryHandler((ushort)featureid); if (queryHandler != null) { var query = FeatureQuery.Parse(queryHandler.FeatureId, path); if (query != null) { result = queryHandler.QueryFeature(query); } else { result = Result.InvalidQuery; } } else { result = Result.FeatureNotFound; } } else { result = Result.ChainNotFound; } } else { result = Result.InvalidQuery; } return(File(result.ToByteArray(), "application/octet-stream", "result.data")); }
public IActionResult Get([FromBody] FeatureQuery query) { return(Ok(_getPostFeatures.Execute(query))); }