public virtual DbContextConfiguration Initialize(
            [NotNull] IServiceProvider externalProvider,
            [NotNull] IServiceProvider scopedProvider,
            [NotNull] ImmutableDbContextOptions contextOptions,
            [NotNull] DbContext context,
            ServiceProviderSource serviceProviderSource)
        {
            Check.NotNull(externalProvider, "externalProvider");
            Check.NotNull(scopedProvider, "scopedProvider");
            Check.NotNull(contextOptions, "contextOptions");
            Check.NotNull(context, "context");
            Check.IsDefined(serviceProviderSource, "serviceProviderSource");

            _externalProvider      = externalProvider;
            _services              = new ContextServices(scopedProvider);
            _serviceProviderSource = serviceProviderSource;
            _contextOptions        = contextOptions;
            _context         = context;
            _modelFromSource = new LazyRef <IModel>(() => _services.ModelSource.GetModel(_context));
            _dataStoreSource = new LazyRef <DataStoreSource>(() => _services.DataStoreSelector.SelectDataStore(this));
            _dataStore       = new LazyRef <DataStore>(() => _dataStoreSource.Value.GetStore(this));
            _connection      = new LazyRef <DataStoreConnection>(() => _dataStoreSource.Value.GetConnection(this));
            _loggerFactory   = new LazyRef <ILoggerFactory>(() => GetLoggerFactory() ?? new NullLoggerFactory());

            return(this);
        }
        public NorthwindQueryFixture()
        {
            _testDatabase = TestDatabase.Northwind().Result;

            _configuration
                = new DbContextOptions()
                  .UseModel(CreateModel())
                  .UseSqlServer(_testDatabase.Connection.ConnectionString)
                  .BuildConfiguration();
        }
        public void Can_update_an_existing_extension()
        {
            IDbContextOptionsConstruction configuration = new ImmutableDbContextOptions();

            configuration.AddOrUpdateExtension <FakeEntityConfigurationExtension>(e => e.Something += "One");
            configuration.AddOrUpdateExtension <FakeEntityConfigurationExtension>(e => e.Something += "Two");

            Assert.Equal(
                "OneTwo", ((ImmutableDbContextOptions)configuration).Extensions.OfType <FakeEntityConfigurationExtension>().Single().Something);
        }
        public void Mutating_methods_throw_when_configuratin_locked()
        {
            IDbContextOptionsConstruction configuration = new ImmutableDbContextOptions();

            configuration.Lock();

            Assert.Equal(
                Strings.FormatEntityConfigurationLocked("Model"),
                Assert.Throws <InvalidOperationException>(() => configuration.Model = Mock.Of <IModel>()).Message);

            Assert.Equal(
                Strings.FormatEntityConfigurationLocked("AddOrUpdateExtension"),
                Assert.Throws <InvalidOperationException>(() => configuration.AddOrUpdateExtension <FakeEntityConfigurationExtension>(e => { })).Message);
        }
Ejemplo n.º 5
0
        public NorthwindQueryFixture()
        {
            _serviceProvider
                = new ServiceCollection()
                  .AddEntityFramework()
                  .AddSqlServer()
                  .UseLoggerFactory(_loggingFactory)
                  .ServiceCollection
                  .BuildServiceProvider();

            _testDatabase = TestDatabase.Northwind().Result;

            _configuration
                = new DbContextOptions()
                  .UseModel(CreateModel())
                  .UseSqlServer(_testDatabase.Connection.ConnectionString)
                  .BuildConfiguration();
        }
        public NorthwindQueryFixture()
        {
            _configuration
                = new DbContextOptions()
                  .UseModel(CreateModel())
                  .UseInMemoryStore()
                  .BuildConfiguration();

            using (var context = new DbContext(_configuration))
            {
                context.Set <Customer>().AddRange(NorthwindData.Customers);
                context.Set <Employee>().AddRange(NorthwindData.Employees);
                context.Set <Order>().AddRange(NorthwindData.Orders);
                context.Set <Product>().AddRange(NorthwindData.Products);
                //context.Set<OrderDetail>().AddRange(NorthwindData.OrderDetails); // composite keys
                context.SaveChanges();
            }
        }
        private static DbContextConfiguration CreateConfiguration(
            Action <FakeConfigurationExtension1> configUpdater1,
            Action <FakeConfigurationExtension2> configUpdater2 = null)
        {
            IDbContextOptionsConstruction contextOptions = new ImmutableDbContextOptions();

            if (configUpdater1 != null)
            {
                contextOptions.AddOrUpdateExtension(configUpdater1);
            }

            if (configUpdater2 != null)
            {
                contextOptions.AddOrUpdateExtension(configUpdater2);
            }

            var contextConfigurationMock = new Mock <DbContextConfiguration>();

            contextConfigurationMock.Setup(m => m.ContextOptions).Returns((ImmutableDbContextOptions)contextOptions);

            return(contextConfigurationMock.Object);
        }
Ejemplo n.º 8
0
 public JustAContext(IServiceProvider serviceProvider, ImmutableDbContextOptions configuration)
     : base(serviceProvider, configuration)
 {
 }
Ejemplo n.º 9
0
 public EarlyLearningCenter(IServiceProvider serviceProvider, ImmutableDbContextOptions configuration)
     : base(serviceProvider, configuration)
 {
 }
Ejemplo n.º 10
0
 public EarlyLearningCenter(ImmutableDbContextOptions configuration)
     : base(configuration)
 {
 }
 public BlogContext(ImmutableDbContextOptions configuration)
     : base(configuration)
 {
 }
 public BlogContext(ImmutableDbContextOptions configuration)
     : base(configuration)
 {
     Assert.NotNull(configuration);
 }
 public BlogContext(IServiceProvider serviceProvider, ImmutableDbContextOptions configuration)
     : base(serviceProvider, configuration)
 {
     Assert.NotNull(serviceProvider);
     Assert.NotNull(configuration);
 }
 private static DbContextConfiguration CreateConfiguration(ImmutableDbContextOptions configuration)
 {
     return(new DbContext(configuration).Configuration);
 }
Ejemplo n.º 15
0
 public NorthwindContext(ImmutableDbContextOptions configuration)
     : base(configuration)
 {
 }