Exemple #1
0
        public static ContainerBuilder UseeEfCore(this ContainerBuilder containerBuilder,
                                                  Func <IComponentContext, EfCoreConfiguration> efCoreConfiguration)
        {
            containerBuilder.Register <EfCoreConfiguration>((Func <IComponentContext, EfCoreConfiguration>)(context =>
            {
                var configuration = efCoreConfiguration(context);
                containerBuilder.RegisterInstance(configuration).As <IEfCoreConfiguration>()
                .IfNotRegistered(typeof(IEfCoreConfiguration)).SingleInstance();

                return(configuration);
            })).As <IEfCoreConfiguration>().SingleInstance();



            containerBuilder.Register <EventStoreEfCoreDbContext>((Func <IComponentContext, EventStoreEfCoreDbContext>)(context =>
            {
                var configuration = efCoreConfiguration(context);

                var dbContext =
                    new EventStoreEfCoreDbContext(DbContextOptionsFactory.Get(configuration.ConnectionString));

                return(dbContext);
            })).As <EventStoreEfCoreDbContext>().IfNotRegistered(typeof(EventStoreEfCoreDbContext)).SingleInstance();

            return(containerBuilder);
        }
Exemple #2
0
        public IdempotenceWriterService(ILifetimeScope container)
        {
            var _configuration = container.Resolve <IEfCoreConfiguration>();

            _dbContext = container.Resolve <EventStoreEfCoreDbContext>();
        }
Exemple #3
0
        public PositionReaderService(ILifetimeScope container)
        {
            var _configuration = container.Resolve <IEfCoreConfiguration>();

            _dbContext = container.Resolve <EventStoreEfCoreDbContext>();
        }