Esempio n. 1
0
        private GameTypeDto?GetFavouriteGameType(User user)
        {
            var serializedBoardType = GetFavouriteBoardType(user);

            if (serializedBoardType != null)
            {
                var moveHandlerType = serviceContainer.GetRegisteredMoveHandlerTypes()
                                      .First(x => x.BaseType !.GetGenericArguments().Last() == serializedBoardType);

                var moveDataType = moveHandlerType.BaseType !.GetGenericArguments().First();

                var(identifier, displayName) = gameTypeMapping.GetDisplayDataBy(x => x.MoveDataType, moveDataType);
                return(new GameTypeDto
                {
                    Identifier = identifier,
                    DisplayName = displayName
                });
            }
            else
            {
                return(null);
            }
        }