Browse Source

Fix AbpDeskDbConfigurer

pull/208/head
Halil İbrahim Kalkan 9 years ago
parent
commit
ad418d057b
  1. 9
      src/AbpDesk/AbpDesk.EntityFrameworkCore/AbpDesk/EntityFrameworkCore/AbpDeskDbConfigurer.cs
  2. 24
      src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/DependencyInjection/AbpDbContextConfigurationContext.cs
  3. 3
      src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/DependencyInjection/DbContextOptionsFactory.cs

9
src/AbpDesk/AbpDesk.EntityFrameworkCore/AbpDesk/EntityFrameworkCore/AbpDeskDbConfigurer.cs

@ -18,7 +18,14 @@ namespace AbpDesk.EntityFrameworkCore
//Configures all dbcontextes to use Sql Server with calculated connection string //Configures all dbcontextes to use Sql Server with calculated connection string
options.Configure(context => options.Configure(context =>
{ {
context.DbContextOptions.UseSqlServer(context.ConnectionString); if (context.ExistingConnection != null)
{
context.DbContextOptions.UseSqlServer(context.ExistingConnection);
}
else
{
context.DbContextOptions.UseSqlServer(context.ConnectionString);
}
}); });
}); });
} }

24
src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/DependencyInjection/AbpDbContextConfigurationContext.cs

@ -1,4 +1,5 @@
using System; using System;
using System.Data.Common;
using JetBrains.Annotations; using JetBrains.Annotations;
using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore;
using Volo.Abp.DependencyInjection; using Volo.Abp.DependencyInjection;
@ -13,13 +14,20 @@ namespace Volo.Abp.EntityFrameworkCore.DependencyInjection
public string ConnectionStringName { get; } public string ConnectionStringName { get; }
public DbConnection ExistingConnection { get; }
public DbContextOptionsBuilder DbContextOptions { get; protected set; } public DbContextOptionsBuilder DbContextOptions { get; protected set; }
public AbpDbContextConfigurationContext(string connectionString, [CanBeNull] string connectionStringName, [NotNull] IServiceProvider serviceProvider) public AbpDbContextConfigurationContext(
[NotNull] string connectionString,
[NotNull] IServiceProvider serviceProvider,
[CanBeNull] string connectionStringName,
[CanBeNull]DbConnection existingConnection)
{ {
ConnectionString = connectionString; ConnectionString = connectionString;
ConnectionStringName = connectionStringName;
ServiceProvider = serviceProvider; ServiceProvider = serviceProvider;
ConnectionStringName = connectionStringName;
ExistingConnection = existingConnection;
DbContextOptions = new DbContextOptionsBuilder(); DbContextOptions = new DbContextOptionsBuilder();
} }
@ -30,8 +38,16 @@ namespace Volo.Abp.EntityFrameworkCore.DependencyInjection
{ {
public new DbContextOptionsBuilder<TDbContext> DbContextOptions => (DbContextOptionsBuilder<TDbContext>)base.DbContextOptions; public new DbContextOptionsBuilder<TDbContext> DbContextOptions => (DbContextOptionsBuilder<TDbContext>)base.DbContextOptions;
public AbpDbContextConfigurationContext(string connectionString, [CanBeNull] string connectionStringName, [NotNull] IServiceProvider serviceProvider) public AbpDbContextConfigurationContext(
: base(connectionString, connectionStringName, serviceProvider) string connectionString,
[NotNull] IServiceProvider serviceProvider,
[CanBeNull] string connectionStringName,
[CanBeNull] DbConnection existingConnection)
: base(
connectionString,
serviceProvider,
connectionStringName,
existingConnection)
{ {
base.DbContextOptions = new DbContextOptionsBuilder<TDbContext>(); base.DbContextOptions = new DbContextOptionsBuilder<TDbContext>();
} }

3
src/Volo.Abp.EntityFrameworkCore/Volo/Abp/EntityFrameworkCore/DependencyInjection/DbContextOptionsFactory.cs

@ -16,8 +16,9 @@ namespace Volo.Abp.EntityFrameworkCore.DependencyInjection
var context = new AbpDbContextConfigurationContext<TDbContext>( var context = new AbpDbContextConfigurationContext<TDbContext>(
creationContext.ConnectionString, creationContext.ConnectionString,
serviceProvider,
creationContext.ConnectionStringName, creationContext.ConnectionStringName,
serviceProvider creationContext.ExistingConnection
); );
var dbContextOptions = GetDbContextOptions<TDbContext>(serviceProvider); var dbContextOptions = GetDbContextOptions<TDbContext>(serviceProvider);

Loading…
Cancel
Save