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); }
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); }
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); }
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); }