Exemple #1
0
        public List <PageContentDto> GetPageById(int id)
        {
            using (BaseRepository <Page> _repo = new BaseRepository <Page>())
            {
                var bilgiler = _repo.SetContext <Page>().Where(c => c.Id == id).FirstOrDefault();

                using (BaseRepository <PageContent> repository = new BaseRepository <PageContent>())
                {
                    List <PageContentDto> icerik = new List <PageContentDto>();
                    var veriler = repository.SetContext <PageContent>().Where(x => x.PageId == bilgiler.Id).ToList();

                    foreach (var pageContent in veriler)
                    {
                        PageContentDto dto = new PageContentDto
                        {
                            Id      = pageContent.Id,
                            Class   = pageContent.Class,
                            Content = pageContent.Content,
                            PageId  = pageContent.Id
                        };

                        icerik.Add(dto);
                    }

                    return(icerik);
                }
            }
        }
        public async Task <IEnumerable <PageContentDto> > MapPageContentToDtoAsync(IEnumerable <TextSpan> pageContents, string pageId)
        {
            return(await Task.Run(() =>
            {
                var dtos = new List <PageContentDto>();

                foreach (var item in pageContents)
                {
                    var dto = new PageContentDto();

                    dto.LineBreak = item.lineBreak;
                    dto.AmountLineBreaks = item.amountLineBreaks;
                    dto.Content = item.content;
                    dto.FontAttribute = item.fontAttribute.GetHashCode();
                    dto.FontFamily = item.fontFamily;
                    dto.FontSize = item.fontSize.GetHashCode();
                    dto.HexBackgroundColor = item.HexBackgroundColor;
                    dto.HexForegroundColor = item.HexForegroundColor;
                    dto.PageId = pageId;

                    dtos.Add(dto);
                }

                return dtos;
            }));
        }
        public async Task <IActionResult> GetPageById([FromRoute] int id, CancellationToken cancellationToken)
        {
            var pageContent = await _mediator.Send(new GetPageContentByIdRequest(id), cancellationToken);

            if (pageContent == null)
            {
                return(NotFound());
            }

            var pageContentDto = new PageContentDto()
            {
                CurrentPage  = _mapper.Map <PageDto>(pageContent.CurrentPage),
                PreviousPage = _mapper.Map <PageDto>(pageContent.PreviousPage),
                NextPage     = _mapper.Map <PageDto>(pageContent.NextPage),
            };

            return(Ok(pageContentDto));
        }