コード例 #1
0
        public async Task <CommunitiesResult> GetAll(int pageIndex, int itemsPage, string?direction)
        {
            var spec = new CommunitySpecification(itemsPage * pageIndex, itemsPage, direction);

            var communities = await _repository.List(spec);

            var total = await _repository.Count <Community>();

            return(new CommunitiesResult {
                Communities = communities.Select(x => new CommunitiesResult.Community
                {
                    Id = x.Id,
                    Location = x.Location,
                    Name = x.Name,
                    Slug = x.Slug,
                    Description = x.Description,
                }).ToList(),
                PaginationInfo = new PaginationInfo(total, communities.Count, pageIndex, int.Parse(Math.Ceiling((decimal)total / itemsPage)
                                                                                                   .ToString(CultureInfo.InvariantCulture)))
            });
        }
コード例 #2
0
        public async Task <IReadOnlyCollection <SpeakerPresentationsResult> > GetAll(Guid id)
        {
            var speakerPresentations = await _repository.List(new SpeakerPresentationSpecification(id));

            return(speakerPresentations.Select(x => new SpeakerPresentationsResult
            {
                Id = x.Id,
                SpeakerId = x.SpeakerId,
                Title = x.Title,
                Synopsis = x.Synopsis
            })
                   .ToList()
                   .AsReadOnly());
        }