public TestBase() { Connection = _fixture.Connection; Mapper = AutoMapperConfiguration.Mapper; var options = new DbContextOptionsBuilder <VexItContext>() .UseSqlite(Connection) .Options; Context = new VexItContext(options); Context.Database.Migrate(); var serviceCollection = new ServiceCollection(); serviceCollection.AddSingleton(this.Context); serviceCollection.AddSingleton(this.Mapper); serviceCollection.AddDbContext <VexItContext>(ops => { ops.UseSqlite(Connection); }); serviceCollection.AddTransient <IRepository <Event>, EventRepository>(); serviceCollection.AddTransient <IEventsService, EventsService>(); ServiceProvider = serviceCollection.BuildServiceProvider(); // sqllite supports only serializable isolation level Context.DefaultBatchIsolationLevel = IsolationLevel.Serializable; DatabaseFixture.Migrate(ServiceProvider); }
public EntityRepositoryBase(VexItContext context) : base(context) { }
public EventRepository(VexItContext context) : base(context) { }
protected RepositoryBase(VexItContext context) { Context = context; }
protected BaseDataService(IMapper mapper, IRepository <T> repository) { Mapper = mapper ?? throw new ArgumentNullException(nameof(mapper)); Repository = repository ?? throw new ArgumentNullException(nameof(repository)); Context = Repository.Context; }