/// <summary> /// 注册系统模块 /// </summary> /// <param name="moduleCatalog"></param> protected override void ConfigureModuleCatalog(IModuleCatalog moduleCatalog) { var modules = AppDomainAllAssemblyFinder.FindAll <IModule>(); foreach (var item in modules) { moduleCatalog.AddModule(new ModuleInfo { ModuleName = item.Name, ModuleType = item.AssemblyQualifiedName, InitializationMode = InitializationMode.OnDemand }); } }
protected override void RegisterTypes(IContainerRegistry containerRegistry) { containerRegistry.RegisterSingleton <PageManager>(); containerRegistry.RegisterSingleton <UserControlManager>(); Type[] pages = AppDomainAllAssemblyFinder.FindAll <Page>(); var pageManager = containerRegistry.GetContainer().Resolve <PageManager>(); Type[] array = pages; foreach (Type item in array) { containerRegistry.RegisterForNavigation(item, item.FullName); FunctionAttribute function = item.GetAttribute <FunctionAttribute>(); if (function != null) { pageManager.Add(function.UniqueName, item); } } Type[] controls = AppDomainAllAssemblyFinder.FindAll <UserControl>(); var controlManager = containerRegistry.GetContainer().Resolve <UserControlManager>(); Type[] array2 = controls; foreach (Type item2 in array2) { containerRegistry.RegisterForNavigation(item2, item2.FullName); QueryLocatorAttribute locator = item2.GetAttribute <QueryLocatorAttribute>(); if (locator != null) { controlManager.Add(item2.FullName, new ControlMapping { ControlType = item2, RegionName = locator.RegionName, TargetType = locator.Target }); } } containerRegistry.RegisterDialog <AlertDialog, AlertDialogViewModel>(); containerRegistry.RegisterDialog <ConfirmDialog, ConfirmDialogViewModel>(); containerRegistry.RegisterDialog <ErrorDialog, ErrorDialogViewModel>(); containerRegistry.RegisterDialog <SuccessDialog, SuccessDialogViewModel>(); containerRegistry.RegisterDialog <WarningDialog, WarningDialogViewModel>(); containerRegistry.Register(typeof(IDialogWindow), typeof(Views.Dialogs.DialogWindow), "dialog"); containerRegistry.RegisterDialog <CommonDialogPage, CommonDialogPageViewModel>(); }