Esempio n. 1
0
        protected override void Load(ContainerBuilder builder)
        {
            // Register ISessionFactory
            _lifetimeProvider.SingletonScope(
                builder.RegisterInstance(BuildSessionFactory())
                .As <ISessionFactory>()
                .OnActivating(RunMigrations));

            // Register ISession
            _lifetimeProvider.RequestScope(builder.Register(c => c.Resolve <ISessionFactory>().OpenSession()));

            // Register ISchemaMigrator
            _lifetimeProvider.SingletonScope(builder.RegisterType <SqlSchemaMigrator>().As <ISchemaMigrator>());

            // Register repositories
            _lifetimeProvider.InstanceScope(builder.RegisterType <BlogRepository>().AsImplementedInterfaces());
            _lifetimeProvider.InstanceScope(builder.RegisterType <PluginRepository>().AsImplementedInterfaces());
            _lifetimeProvider.InstanceScope(builder.RegisterType <UserRepository>().AsImplementedInterfaces());
            _lifetimeProvider.InstanceScope(builder.RegisterType <RoleRepository>().AsImplementedInterfaces());
            _lifetimeProvider.InstanceScope(builder.RegisterType <ReleaseRepository>().AsImplementedInterfaces());
        }
Esempio n. 2
0
 protected override void Load(ContainerBuilder builder)
 {
     _lifetimeProvider.InstanceScope(builder.Register(CreateCloudBlobClient));
     _lifetimeProvider.SingletonScope(builder.RegisterType <AzureBlobStorage>().AsImplementedInterfaces());
 }