public override void RegisterMessenger() { Messenger.Default.Register <string>(View, "NavigationNewPage", arg => { var module = AutofacProvider.Get <IModule>(arg); if (module != null) { module.BindDefaultModel(); View.page.Content = module.GetView(); } else { //... } }); Messenger.Default.Register <string>(View, "UpdateBackground", arg => { ViewModel.StyleConfig.Url = arg; //保存用户配置... }); Messenger.Default.Register <double>(View, "UpdateTrans", arg => { ViewModel.StyleConfig.Trans = arg / 100; //保存用户配置... }); Messenger.Default.Register <double>(View, "UpdateGaussian", arg => { ViewModel.StyleConfig.Radius = arg; //保存用户配置... }); }
protected override void OnStartup(StartupEventArgs e) { base.OnStartup(e); ConfigureServices(); var view = AutofacProvider.Get <IModuleDialog>("LoginCenter"); view.ShowDialog(); }
public static void StartUp(string basePath) { //初始化Ioc var autofacProvider = new AutofacProvider(); autofacProvider.InitAutofacContainer(Path.Combine(basePath, "Config/Autofac/AutofacConfig.xml")); IocHelper.SetIocProvider(autofacProvider); //初始化iBatis.Net SqlMapperHelper.InitMapper(); }
protected void Application_Start() { AreaRegistration.RegisterAllAreas(); AutofacProvider.BuildContainer(GlobalConfiguration.Configuration); GlobalConfiguration.Configure(WebApiConfig.Register); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); }
protected void ConfigureServices() { AutofacLocator locator = new AutofacLocator(); ContainerBuilder builder = new ContainerBuilder(); builder.RegisterType(typeof(LoginCenter)).Named("LoginCenter", typeof(IModuleDialog)); locator.Register(builder); AutofacProvider.RegisterServiceLocator(locator); }
public override void RegisterMessenger() { Messenger.Default.Register <bool>(View, "NavigationHome", arg => { View.Close(); //Close LoginView var mainView = AutofacProvider.Get <IModuleDialog>("MainCenter"); //Get MainView Examples mainView.ShowDialog(); //Show MainView }); Messenger.Default.Register <bool>(View, "Exit", arg => { View.Close(); }); }
public override void RegisterMessenger() { Messenger.Default.Register <bool>(GetDialog(), "NavigationHome", arg => { GetDialog().Hide(); var view = AutofacProvider.Get <IModuleDialog>("MainCenter"); view.ShowDialog(); }); Messenger.Default.Register <bool>(GetDialog(), "Exit", arg => { GetDialog().Close(); }); }
protected void ConfigureServices() { AutofacLocator locator = new AutofacLocator(); ContainerBuilder builder = new ContainerBuilder(); builder.RegisterType <ConsumptionService>().As <IConsumptionService>(); builder.RegisterType(typeof(LoginCenter)).Named("LoginCenter", typeof(IModuleDialog)); builder.RegisterType(typeof(MainCenter)).Named("MainCenter", typeof(IModuleDialog)); builder.RegisterType(typeof(SkinCenter)).Named("SkinCenter", typeof(IModule)); builder.RegisterType(typeof(UserCenter)).Named("UserCenter", typeof(IModule)); builder.RegisterType(typeof(MenuCenter)).Named("MenuCenter", typeof(IModule)); builder.RegisterType(typeof(BasicCenter)).Named("BasicCenter", typeof(IModule)); locator.Register(builder); AutofacProvider.RegisterServiceLocator(locator); }
private IServiceProvider ConfigureProviderByDependency(IServiceCollection services) { var provider = Configuration.GetValue <DependencyProvider>("DependencyProvider"); switch (provider) { case DependencyProvider.Autofac: return(AutofacProvider.Configure(services)); case DependencyProvider.DotNet: return(DotNetProvider.Configure(services)); default: throw new ArgumentOutOfRangeException(); } }
public override void SubscribeMessenger() { Messenger.Default.Register <bool>(View, "DisplayView", arg => { ViewModel.DialogIsOpen = arg; }); Messenger.Default.Register <string>(View, "NavigationNewPage", async arg => { var module = AutofacProvider.Get <IModule>(arg); if (module != null) { if (arg == View.page.Tag?.ToString()) { return; } ViewModel.DialogIsOpen = true; await Task.Delay(30); await module.BindDefaultModel(); View.page.Tag = arg; View.page.Content = module.GetView(); ViewModel.DialogIsOpen = false; //关闭等待窗口 GCSettings.LargeObjectHeapCompactionMode = GCLargeObjectHeapCompactionMode.CompactOnce; GC.Collect(); } else { //404? } }); Messenger.Default.Register <string>(View, "UpdateBackground", arg => { ViewModel.StyleConfig.Url = arg; //保存用户配置... }); Messenger.Default.Register <double>(View, "UpdateTrans", arg => { ViewModel.StyleConfig.Trans = arg / 100; //保存用户配置... }); Messenger.Default.Register <double>(View, "UpdateGaussian", arg => { ViewModel.StyleConfig.Radius = arg; //保存用户配置... }); }
public override void SubscribeMessenger() { Messenger.Default.Register <MsgInfo>(View, "UpdateDialog", arg => { ViewModel.DialogIsOpen = arg.IsOpen; ViewModel.DialogMsg = arg.Msg; }); Messenger.Default.Register <bool>(View, "NavigationHome", arg => { View.Close(); //Close LoginView var mainView = AutofacProvider.Get <IModuleDialog>("MainCenter"); //Get MainView Examples mainView.ShowDialog(); //Show MainView }); Messenger.Default.Register <bool>(View, "Exit", arg => { View.Close(); }); }
public override void SubscribeMessenger() { Messenger.Default.Register <bool>(View, "DisplayView", arg => { ViewModel.DialogIsOpen = arg; }); Messenger.Default.Register <string>(View, "NavigationNewPage", async arg => { var module = AutofacProvider.Get <IModule>(arg); if (module != null) { ViewModel.DialogIsOpen = true; await Task.Delay(30); await module.BindDefaultModel(); View.page.Content = module.GetView(); ViewModel.DialogIsOpen = false; //关闭等待窗口 } else { } }); Messenger.Default.Register <string>(View, "UpdateBackground", arg => { ViewModel.StyleConfig.Url = arg; //保存用户配置... }); Messenger.Default.Register <double>(View, "UpdateTrans", arg => { ViewModel.StyleConfig.Trans = arg / 100; //保存用户配置... }); Messenger.Default.Register <double>(View, "UpdateGaussian", arg => { ViewModel.StyleConfig.Radius = arg; //保存用户配置... }); }
public BasicViewModel() { menuService = AutofacProvider.Get <IBasicService>(); }
public UserViewModel() { userService = AutofacProvider.Get <IUserService>(); }
protected void Application_Start() { AppDomain.CurrentDomain.FirstChanceException += CurrentDomain_FirstChanceException; //Manually set the path of "SQLite.Interop.dll" which is a unmanagable dll int wsize = IntPtr.Size; string libdir = (wsize == 4) ? "x86" : "x64"; string appPath = System.IO.Path.GetDirectoryName($@"{AppDomain.CurrentDomain.BaseDirectory}\bin\"); SetDllDirectory(System.IO.Path.Combine(appPath, libdir)); //Ioc configue var provider = new AutofacProvider( $@"{AppDomain.CurrentDomain.BaseDirectory}\bin\repoconfig\autofac.repo.reader.json", $@"{AppDomain.CurrentDomain.BaseDirectory}\bin\repoconfig\autofac.repo.writer.json", $@"{AppDomain.CurrentDomain.BaseDirectory}\bin\moduleconfig\autofac.modules.json"); //add the configues out of configue files in PreBuild provider.PreBuild((builder) => { //Interceptor only can be configured by code //PersonCommandHandler dependents object that registered in config file builder.RegisterType <PersonCommandHandler>() .As <IPersonCommandHandler>() .EnableInterfaceInterceptors(); builder.Register(c => new CommandPropertyValidator()); //Application services builder.RegisterType <PersonQueryService>() .As <IPersonQueryServiceContract>() .EnableInterfaceInterceptors(); builder.RegisterType <PersonCommandService>() .As <IPersonCommandServiceContract>() .EnableInterfaceInterceptors(); var config = GlobalConfiguration.Configuration; // Register your Web API controllers. builder.RegisterApiControllers(Assembly.GetExecutingAssembly()); // Register the Autofac filter provider. builder.RegisterWebApiFilterProvider(config); //Register ErrorHandler builder.RegisterType <UnKnownErrorHandler>() .As <IUnKnownErrorHandler>(); builder.RegisterType <NegativeErrorHandler>() .As <INegativeErrorHandler>(); //Register LoggerController builder.RegisterType <LoggerFactory>() .As <ILoggerFactory>(); builder.RegisterType <AL.LoggerController <VersionedEvent> >() .As <AL.ILoggerController <VersionedEvent> >(); builder.RegisterType <AL.LoggerController <ExceptionEvent> >() .As <AL.ILoggerController <ExceptionEvent> >(); builder.RegisterType <AL.LoggerController <UnKnownErrorEvent> >() .As <AL.ILoggerController <UnKnownErrorEvent> >(); builder.RegisterType <AL.LoggerController <FirstChanceExceptionEventArgs> >() .As <AL.ILoggerController <FirstChanceExceptionEventArgs> >(); //Register ActionFilters builder.RegisterType <NegativeErrorExceptionFilter>() .AsWebApiExceptionFilterFor <ApiControllerExtension>() .InstancePerRequest(); builder.RegisterType <UnKnownErrorExceptionFilter>() .AsWebApiExceptionFilterFor <ApiControllerExtension>() .InstancePerRequest(); }); provider.Build(); provider.AfterBuild((container) => { // Set the dependency resolver to be Autofac. GlobalConfiguration.Configuration.DependencyResolver = new AutofacWebApiDependencyResolver(container); }); AreaRegistration.RegisterAllAreas(); GlobalConfiguration.Configure(WebApiConfig.Register); //Subscribe UnKnowErrorEvent EventBus.Instance.Subscribe( provider.GetContainer().Resolve <IUnKnownEventsHandler>()); }
public UserViewModel() { userService = AutofacProvider.Get <IConsumptionService>(); }
public LoginViewModel() { userService = AutofacProvider.Get <IConsumptionService>(); LoginCommand = new RelayCommand(Login); LogoutCommand = new RelayCommand(LogOut); }
public MenuViewModel() { menuService = AutofacProvider.Get <IConsumptionService>(); }
public BasicViewModel() { service = AutofacProvider.Get <IConsumptionService>(); }
public MenuViewModel() { menuService = AutofacProvider.Get <IMenuService>(); }