示例#1
0
        public void Initialize()
        {
            var context = new NavigationProviderContext(this);

            //should be register thought LocalizsableModeule

            foreach (var provider in _iocResolver.ResolveAll <INavigationProvider>())
            {
                provider.SetNavigation(context);
            }

            sourceMenus = Menus.AutoMapTo <IDictionary <string, INavigationDefinition> >();
            Menus       = Filter(Menus).Result;

            if (_iocResolver.IsRegistered <IDomainEventBus>())
            {
                _iocResolver.Resolve <IDomainEventBus>().Trigger(new MenusInitEventData()
                {
                    NavigationItems = Menus.ToDictionary(d => d.Key, d => d.Value.Items.ToArray())
                });
            }


            //TODO Menu Adapter
            {
            }


            //Adapter abp
            var adpaterMenusModel = Menus.Values.FirstOrDefault().Items.Select(menuItem =>
                                                                               funTransfter(menuItem));

            foreach (var menus in adpaterMenusModel)
            {
                _iocResolver.Resolve <Abp.Application.Navigation.NavigationManager>().MainMenu.AddItem(menus);
            }
        }