public async Task <Response <PagedQueryResultDTO <UserDTO> > > GetPaginated(IPageOption pageOption) { var result = await this.genericRepository.FindPagedAsync <User>(pageOption, null); return(new Response <PagedQueryResultDTO <UserDTO> >(new PagedQueryResultDTO <UserDTO>(result.Take, result.Skip, result.Total, this.mapper.Map <IEnumerable <User>, IEnumerable <UserDTO> >(result.Result)))); }
public IPagedQueryResult <T> FindPaged <T>(IPageOption pageOptions, string[] includes, ISpecification <T> additionalSpec = null) where T : BaseEntity <TId> { if (pageOptions == null) { throw new ArgumentNullException(nameof(pageOptions)); } var spec = this.SpecificationBuilder.Create <T>(pageOptions.Filters); if (additionalSpec != null) { spec = spec.And(additionalSpec); } var entityQuery = new EntityPagedValueQuery <T>(spec, pageOptions.Take, pageOptions.Skip) { Sorts = pageOptions.Sorts }; var entityQueryResult = entityQuery.Run(_dbContext.Set <T>(), this.Evaluator); var modelsQueryResult = new PagedQueryResult <T>(entityQueryResult.Result, entityQueryResult.Take, entityQueryResult.Skip, entityQueryResult.Total); return(modelsQueryResult); }
public Page CreateMenu(string name, IPageOption pageOption) { var page = new Page(game.Frames); page.Y = 0; page.X = 0; page.Width = game.RenderSystem.DisplayBounds.Width; page.Height = game.RenderSystem.DisplayBounds.Height; var members = pageOption.GetType().GetMembers().Where(t => t.GetCustomAttribute <ControlAttribute>(true) != null).ToList(); members.Sort(Comparer <MemberInfo> .Create( (a, b) => { return(a.GetCustomAttribute <ControlAttribute>().Order.CompareTo(b.GetCustomAttribute <ControlAttribute>().Order)); })); foreach (var m in members) { actions[m.GetCustomAttribute <ControlAttribute>(true).GetType()]?.Invoke(game.Frames, page, m.GetCustomAttribute <ControlAttribute>(true), m.GetCustomAttribute <DescriptionAttribute>()); } return(page); }