public GamesController(IGameService gameService,
            ILogger logger,
            IGenreService genreService,
            IPlarfotmTypeService platformTypeService,
            IPublisherService publisherService)
        {
            _gameService = gameService;
            _logger = logger;
            _genreService = genreService;
            _publisherService = publisherService;
            _plarfotmTypeService = platformTypeService;

            Mapper.CreateMap<CreateGameViewModel, GameDTO>()
                .ForMember(g => g.Genres, m => m.Ignore())
                .ForMember(g => g.PlatformTypes, m => m.Ignore())
                .ForMember(g => g.Publisher, m => m.Ignore());

            Mapper.CreateMap<CreateGameViewModel, GameViewModel>()
                .ForMember(g => g.Genres, m => m.Ignore())
                .ForMember(g => g.PlatformTypes, m => m.Ignore())
                .ForMember(g => g.Publishers, m => m.Ignore());

            Mapper.CreateMap<FilterViewModel, FilterDTO>()
                .ForMember(f => f.From, m => m.MapFrom(fvm => Convert.ToDecimal(fvm.From)))
                .ForMember(f => f.To, m => m.MapFrom(fvm => Convert.ToDecimal(fvm.To)));

            Mapper.CreateMap<GameDTO, GameDetailsViewModel>()
                .ForMember(g => g.Genres,
                    m =>
                        m.MapFrom(
                            gamedto =>
                                new MultiSelectList(
                                    gamedto.Genres.Select(
                                        genre =>
                                            new SelectListItem() { Value = genre.GenreId.ToString(), Text = genre.Name }))))
                .ForMember(pt => pt.PlatformTypes,
                    m =>
                        m.MapFrom(
                            ptDto =>
                                new MultiSelectList(
                                    ptDto.PlatformTypes.Select(
                                        platformType =>
                                            new SelectListItem()
                                            {
                                                Value = platformType.PlatformTypeId.ToString(),
                                                Text = platformType.Name
                                            }))))
                .ForMember(g => g.PublisherCompanyName, m => m.MapFrom(g => g.Publisher.CompanyName));
        }
Beispiel #2
0
 public GameController(IGameService gameService,
     ICommentService commentServise, 
     ILogger logger, 
     IGenreService genreService, 
     IPlarfotmTypeService plarfotmTypeService)
 {
     _gameService = gameService;
     _commentService = commentServise;
     _logger = logger;
     _genreService = genreService;
     _plarfotmTypeService = plarfotmTypeService;
     Mapper.CreateMap<CommentDTO, CommentViewModel>()
         .ForMember( c => c.ParentComment, m => m.Ignore() );
     Mapper.CreateMap<CommentViewModel, CommentDTO>();
     Mapper.CreateMap<GameDTO, GameDetailsViewModel>()
         .ForMember(g => g.Genres,
             m =>
                 m.MapFrom(
                     gamedto =>
                         new MultiSelectList(
                             gamedto.Genres.Select(
                                 genre =>
                                     new SelectListItem() { Value = genre.GenreId.ToString(), Text = genre.Name }))))
         .ForMember(pt => pt.PlatformTypes,
             m =>
                 m.MapFrom(
                     ptDto =>
                         new MultiSelectList(
                             ptDto.PlatformTypes.Select(
                                 platformType =>
                                     new SelectListItem()
                                     {
                                         Value = platformType.PlatformTypeId.ToString(),
                                         Text = platformType.Name
                                     }))))
         .ForMember(g => g.PublisherCompanyName, m => m.MapFrom( g => g.Publisher.CompanyName ));
 }