public Configuration RegisterDefault() { ObjectContainer.RegisterInstance <Configuration>(this); ObjectContainer.Register <IRepositoryContext, NullRepositoryContext>(LifeScope.Transient); RepositoryContextManager.RegisterCreateNewContextFunc(() => { return(new NullRepositoryContext()); }); ObjectContainer.Register <ICurrentRepositoryContextProvider, CurrentRepositoryContextProvider>(); ObjectContainer.Register <IRepositoryContextManager, RepositoryContextManager>(); ObjectContainer.Register <ILoggerFactory, NullLoggerFactory>(); ObjectContainer.Register <ILoggerProvider, NullLoggerProvider>(); ObjectContainer.Register <IJsonSerializer, NullJsonSerializer>(); ObjectContainer.Register <ICommandHandler, CommandHandler>(); ObjectContainer.Register <IScheduleService, ScheduleService>(); ObjectContainer.Register <ICache, InMemoryCache>(); return(this); }
public static Configuration RegisterEntityFrameworkRepositoryContext <TDbContext>(this Configuration configuration) where TDbContext : DbContext, new() { RepositoryContextManager.RegisterCreateNewContextFunc(() => { return(new EntityFrameworkCoreRepositoryContext <TDbContext>()); }); EntityFrameworkCoreDbContextFactory.RegisterDbContextDelegate(() => { return(new TDbContext()); }); return(configuration); }