//using Prism.Container.DryIoc; using Prism.Services.Dialogs; using Prism.Events; using SWS.Commons; using SWS.Electrical.ViewModels; using SWS.Electrical.Views; using SWS.Service; using SWS.WPF.ViewModels; using SWS.WPF.Views; using Unity; using Prism.Ioc; using Prism.DryIoc; using DryIoc; namespace SWS.Electrical { public class Start { public static void RegisterTypes() { GlobalObject.container = new UnityContainer(); GlobalObject.container.RegisterSingleton(); GlobalObject.container.RegisterSingleton(); GlobalObject.container.RegisterSingleton(); GlobalObject.container.RegisterSingleton(); GlobalObject.container.RegisterSingleton(); GlobalObject.container.RegisterSingleton(); GlobalObject.container.RegisterSingleton(); GlobalObject.container.RegisterSingleton(); GlobalObject.container.RegisterSingleton(); GlobalObject.container.RegisterSingleton(); GlobalObject.container.RegisterSingleton(); GlobalObject.container.RegisterSingleton(); GlobalObject.container.RegisterSingleton(); GlobalObject.container.RegisterSingleton(); GlobalObject.container.RegisterSingleton(); GlobalObject.container.RegisterSingleton(); GlobalObject.container.RegisterSingleton(); DryIoc.Rules DefaultRules = DryIoc.Rules.Default .WithConcreteTypeDynamicRegistrations(null, DryIoc.Reuse.Transient) .With(DryIoc.Made.Of(DryIoc.FactoryMethod.ConstructorWithResolvableArguments)) .WithFuncAndLazyWithoutRegistration() .WithTrackingDisposableTransients() .WithFactorySelector(DryIoc.Rules.SelectLastRegisteredFactory()); GlobalObject._prismContainer = new DryIocContainerExtension(new Container(DefaultRules)); GlobalObject._prismContainer.Register(); GlobalObject._prismContainer.Register(); // GlobalObject._prismContainer.Register(); GlobalObject._prismContainer.RegisterDialog(); GlobalObject._prismContainer.RegisterDialog(); GlobalObject._prismContainer.RegisterDialog(); GlobalObject._prismContainer.RegisterDialog(); GlobalObject._prismContainer.RegisterDialog(); GlobalObject._prismContainer.RegisterDialog(); GlobalObject._prismContainer.RegisterDialog(); GlobalObject._prismContainer.RegisterDialog(); } } }