Пример #1
0
        public static BookEditionViewModel CreateFromBookEdition(BookEdition bookEdition,
                                                                 bool includeBook       = false,
                                                                 bool includeDimensions = false,
                                                                 bool includePublisher  = false)
        {
            var dto = new BookEditionViewModel
            {
                Isbn         = bookEdition.Isbn,
                PageCount    = bookEdition.PageCount,
                PrintDate    = bookEdition.PrintDate,
                CreationDate = bookEdition.CreationDate,
                CreatorId    = bookEdition.CreatorId
            };

            if (includeBook)
            {
                dto.Book = BookViewModel.CreateFromBook(bookEdition.Book);
            }

            if (includeDimensions)
            {
                dto.Dimensions = DimensionViewModel.CreateFromDimension(bookEdition.Dimensions);
            }

            if (includePublisher)
            {
                dto.Publisher = PublisherViewModel.CreateFromPublisher(bookEdition.Publisher);
            }

            return(dto);
        }
Пример #2
0
        public static DimensionViewModel CreateFromDimension(Dimension dimension, bool includeBookEditions = false)
        {
            var dto = new DimensionViewModel
            {
                Id           = dimension.Id,
                Width        = dimension.Width,
                Height       = dimension.Height,
                CreationDate = dimension.CreationDate,
                CreatorId    = dimension.CreatorId
            };

            if (includeBookEditions)
            {
                dto.BookEditions = BookEditionViewModel.CreateFromBookEditions(dimension.BookEditions);
            }

            return(dto);
        }
Пример #3
0
        public static PublisherViewModel CreateFromPublisher(Publisher publisher, bool includeBookEditions = false)
        {
            var dto = new PublisherViewModel
            {
                Id           = publisher.Id,
                Name         = publisher.Name,
                Description  = publisher.Description,
                CreationDate = publisher.CreationDate,
                CreatorId    = publisher.CreatorId
            };

            if (includeBookEditions)
            {
                dto.BookEditions = BookEditionViewModel.CreateFromBookEditions(publisher.BookEditions);
            }

            return(dto);
        }
Пример #4
0
        public static BookViewModel CreateFromBook(Book book,
                                                   bool includeGenres   = false,
                                                   bool includeAuthors  = false,
                                                   bool includeEditions = false,
                                                   bool includeSeries   = false)
        {
            var dto = new BookViewModel
            {
                Id           = book.Id,
                Title        = book.Title,
                Description  = book.Description,
                CreationDate = book.CreationDate,
                CreatorId    = book.CreatorId
            };

            if (includeGenres)
            {
                dto.Genres = GenreViewModel.CreateFromGenres(book.Genres.Select(bg => bg.Genre).ToList());
            }

            if (includeAuthors)
            {
                dto.Authors = AuthorViewModel.CreateFromAuthors(book.Authors.Select(ba => ba.Author).ToList());
            }

            if (includeEditions)
            {
                dto.Editions = BookEditionViewModel.CreateFromBookEditions(book.Editions, false, true, true);
            }

            if (includeSeries)
            {
                dto.Series = SerieViewModel.CreateFromSeries(book.Series.Select(sb => sb.Serie).ToList(), true);
            }

            return(dto);
        }