public static IContainer CreateContainer(AppCriticalServices appCriticalServices) { Verify.Argument.IsNotNull(appCriticalServices, nameof(appCriticalServices)); var containerBuilder = new ContainerBuilder(); appCriticalServices.Register(containerBuilder); containerBuilder .RegisterType <AppBootstrapper>() .SingleInstance() .As <IAppBootstrapper>(); containerBuilder .RegisterType <DatabaseService>() .SingleInstance() .AsSelf(); containerBuilder .RegisterType <FaceDetector>() .SingleInstance() .AsSelf(); containerBuilder .RegisterType <LBPFaceRecognizer>() .AsSelf(); containerBuilder .RegisterType <FrameImage>() .As <VideoImage>(); // webcam source /**/ containerBuilder .RegisterType <DXCaptureSourceProvider>() .As <IVideoSourceProvider>(); /**/ containerBuilder .RegisterType <RecognitionLogController>() .AsSelf(); containerBuilder .RegisterAssemblyModules(typeof(RegistrationServices).Assembly); return(containerBuilder.Build()); }
static void Main() { var appServices = new AppCriticalServices(); using (var container = RegistrationServices.CreateContainer(appServices)) using (var appBootstrapper = container.Resolve <IAppBootstrapper>()) { appBootstrapper.Container = container; var appConfiguration = container.Resolve <IApplicationConfiguration>(); appConfiguration.Load(); // Fix-me: удалите //var tpu = container.Resolve<TestParametersUser>(); appBootstrapper.Run(); appConfiguration.Save(); } }