示例#1
0
 public void Map(INavigationMapper navigationMapper)
 {
     navigationMapper
     .Map <ErrorPopupViewModel, ErrorPopupView>()
     .Map <ExceptionViewModel, ExceptionView>()
     .Map <LoginViewModel, LoginView>()
     .Map <LoginTwoViewModel, LoginTwoView>()
     .Map <MainViewModel, MainView>()
     .Map <SecondViewModel, SecondView>();
 }
示例#2
0
        public NavigationService(
            IEnumerable <KeyValuePair <Type, IStackAlgorithm> > stackAlgorithms,
            IEnumerable <INavigationModule> navigationModules,
            INavigationViewProvider navigationViewProvider,
            IViewModelWrapperStorage viewModelWrapperStorage,
            INavigationMapper navigationMapper,
            INavigationPageFactory navigationPageFactory,
            IConfigProvider <NavigationConfig> navigationConfigProvider,
            IResolver resolver)
        {
            _stackAlgorithms          = stackAlgorithms.ToDictionary(it => it.Key, it => it.Value);
            _navigationViewProvider   = navigationViewProvider;
            _viewModelWrapperStorage  = viewModelWrapperStorage;
            _navigationMapper         = navigationMapper;
            _navigationPageFactory    = navigationPageFactory;
            _navigationConfigProvider = navigationConfigProvider;
            _resolver = resolver;

            navigationModules.ForEach(it => it.Map(navigationMapper));
        }
        public NavigationItemsModel GetNavigationModel()
        {
            NavigationItemsModel model = new NavigationItemsModel(){
                ItemsInNavigation   = new List<INavigationItem>()
            };

            var mapperFactory = new NavigationMapperFactory();

            var items = _navigationBusiness.getNavigationItems();

            if (items != null)
            {
                var builtItems = new List<INavigationItem>();
                foreach (var item in items)
                {
                    _navMapper = mapperFactory.GetMapperForType(item);
                    builtItems.Add(_navMapper.MapDomainModelToUi(item));
                }
                model.ItemsInNavigation = builtItems;
            }

            return model;
        }