public static bool DatabaseIsInstalled() { if (!_databaseIsInstalled.HasValue) { var manager = new DataSettingsManager(); var settings = manager.LoadSettings(); _databaseIsInstalled = settings != null && !String.IsNullOrEmpty(settings.DataConnectionString); } return _databaseIsInstalled.Value; }
public void Register(ContainerBuilder builder, ITypeFinder typeFinder) { builder.Register(c => //register FakeHttpContext when HttpContext is not available HttpContext.Current != null ? (new HttpContextWrapper(HttpContext.Current) as HttpContextBase) : (new FakeHttpContext("~/") as HttpContextBase)) .As<HttpContextBase>() .InstancePerLifetimeScope(); var dataSettingsManager = new DataSettingsManager(); var dataProviderSettings = dataSettingsManager.LoadSettings(); if (dataProviderSettings != null && dataProviderSettings.IsValid()) { builder.Register<IDbContext>(c => new BlueskyObjectContext(dataProviderSettings.DataConnectionString)).InstancePerLifetimeScope(); } else { builder.Register<IDbContext>(c => new BlueskyObjectContext(dataSettingsManager.LoadSettings().DataConnectionString)).InstancePerLifetimeScope(); } builder.RegisterControllers(typeFinder.GetAssemblies().ToArray()); builder.RegisterGeneric(typeof(EfRepository<>)).As(typeof(IRepository<>)).InstancePerLifetimeScope(); builder.RegisterType<WebHelper>().As<IWebHelper>().InstancePerLifetimeScope(); builder.RegisterType<FormsAuthenticationService>().As<IAuthenticationService>().InstancePerLifetimeScope(); builder.RegisterType<WebWorkContext>().As<IWorkContext>().InstancePerLifetimeScope(); builder.RegisterType<AccountService>().As<IAccountService>().InstancePerLifetimeScope(); builder.RegisterType<BankService>().As<IBankService>().InstancePerLifetimeScope(); builder.RegisterType<AccountRoleService>().As<IAccountRoleService>().InstancePerLifetimeScope(); builder.RegisterType<ActivityLogService>().As<IActivityLogService>().InstancePerLifetimeScope(); builder.RegisterType<AccountRegistrationService>().As<IAccountRegistrationService>().InstancePerLifetimeScope(); builder.RegisterType<EncryptionService>().As<IEncryptionService>().InstancePerLifetimeScope(); }