Browse Source

tenant-management module db prefix revision

pull/1904/head
Halil İbrahim Kalkan 7 years ago
parent
commit
103532a9ea
  1. 11
      modules/tenant-management/src/Volo.Abp.TenantManagement.Domain/Volo/Abp/TenantManagement/AbpTenantManagementConsts.cs
  2. 13
      modules/tenant-management/src/Volo.Abp.TenantManagement.Domain/Volo/Abp/TenantManagement/AbpTenantManagementDbProperties.cs
  3. 18
      modules/tenant-management/src/Volo.Abp.TenantManagement.EntityFrameworkCore/Volo/Abp/TenantManagement/EntityFrameworkCore/AbpTenantManagementDbContextModelCreatingExtensions.cs
  4. 18
      modules/tenant-management/src/Volo.Abp.TenantManagement.EntityFrameworkCore/Volo/Abp/TenantManagement/EntityFrameworkCore/AbpTenantManagementModelBuilderConfigurationOptions.cs
  5. 2
      modules/tenant-management/src/Volo.Abp.TenantManagement.EntityFrameworkCore/Volo/Abp/TenantManagement/EntityFrameworkCore/ITenantManagementDbContext.cs
  6. 8
      modules/tenant-management/src/Volo.Abp.TenantManagement.EntityFrameworkCore/Volo/Abp/TenantManagement/EntityFrameworkCore/TenantManagementDbContext.cs
  7. 4
      modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo/Abp/TenantManagement/MongoDb/AbpTenantManagementMongoDbContextExtensions.cs
  8. 2
      modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo/Abp/TenantManagement/MongoDb/ITenantManagementMongoDbContext.cs
  9. 9
      modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo/Abp/TenantManagement/MongoDb/TenantManagementMongoDbContext.cs
  10. 3
      modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo/Abp/TenantManagement/MongoDb/TenantManagementMongoModelBuilderConfigurationOptions.cs

11
modules/tenant-management/src/Volo.Abp.TenantManagement.Domain/Volo/Abp/TenantManagement/AbpTenantManagementConsts.cs

@ -1,11 +0,0 @@
namespace Volo.Abp.TenantManagement
{
public static class AbpTenantManagementConsts
{
public const string DefaultDbTablePrefix = "Abp";
public const string DefaultDbSchema = null;
public const string ConnectionStringName = "AbpTenantManagement";
}
}

13
modules/tenant-management/src/Volo.Abp.TenantManagement.Domain/Volo/Abp/TenantManagement/AbpTenantManagementDbProperties.cs

@ -0,0 +1,13 @@
using Volo.Abp.Data;
namespace Volo.Abp.TenantManagement
{
public static class AbpTenantManagementDbProperties
{
public static string DbTablePrefix { get; } = AbpCommonDbProperties.DbTablePrefix;
public static string DbSchema { get; } = AbpCommonDbProperties.DbSchema;
public const string ConnectionStringName = "AbpTenantManagement";
}
}

18
modules/tenant-management/src/Volo.Abp.TenantManagement.EntityFrameworkCore/Volo/Abp/TenantManagement/EntityFrameworkCore/AbpTenantManagementDbContextModelCreatingExtensions.cs

@ -1,3 +1,4 @@
using System;
using JetBrains.Annotations;
using Microsoft.EntityFrameworkCore;
using Volo.Abp.EntityFrameworkCore.Modeling;
@ -8,19 +9,20 @@ namespace Volo.Abp.TenantManagement.EntityFrameworkCore
{
public static void ConfigureTenantManagement(
this ModelBuilder builder,
[CanBeNull] string tablePrefix = AbpTenantManagementConsts.DefaultDbTablePrefix,
[CanBeNull] string schema = AbpTenantManagementConsts.DefaultDbSchema)
[CanBeNull] Action<AbpTenantManagementModelBuilderConfigurationOptions> optionsAction = null)
{
Check.NotNull(builder, nameof(builder));
if (tablePrefix == null)
{
tablePrefix = "";
}
var options = new AbpTenantManagementModelBuilderConfigurationOptions(
AbpTenantManagementDbProperties.DbTablePrefix,
AbpTenantManagementDbProperties.DbSchema
);
optionsAction?.Invoke(options);
builder.Entity<Tenant>(b =>
{
b.ToTable(tablePrefix + "Tenants", schema);
b.ToTable(options.TablePrefix + "Tenants", options.Schema);
b.ConfigureFullAuditedAggregateRoot();
@ -33,7 +35,7 @@ namespace Volo.Abp.TenantManagement.EntityFrameworkCore
builder.Entity<TenantConnectionString>(b =>
{
b.ToTable(tablePrefix + "TenantConnectionStrings", schema);
b.ToTable(options.TablePrefix + "TenantConnectionStrings", options.Schema);
b.HasKey(x => new { x.TenantId, x.Name });

18
modules/tenant-management/src/Volo.Abp.TenantManagement.EntityFrameworkCore/Volo/Abp/TenantManagement/EntityFrameworkCore/AbpTenantManagementModelBuilderConfigurationOptions.cs

@ -0,0 +1,18 @@
using JetBrains.Annotations;
using Volo.Abp.EntityFrameworkCore.Modeling;
namespace Volo.Abp.TenantManagement.EntityFrameworkCore
{
public class AbpTenantManagementModelBuilderConfigurationOptions : ModelBuilderConfigurationOptions
{
public AbpTenantManagementModelBuilderConfigurationOptions(
[NotNull] string tablePrefix,
[CanBeNull] string schema)
: base(
tablePrefix,
schema)
{
}
}
}

2
modules/tenant-management/src/Volo.Abp.TenantManagement.EntityFrameworkCore/Volo/Abp/TenantManagement/EntityFrameworkCore/ITenantManagementDbContext.cs

@ -4,7 +4,7 @@ using Volo.Abp.EntityFrameworkCore;
namespace Volo.Abp.TenantManagement.EntityFrameworkCore
{
[ConnectionStringName(AbpTenantManagementConsts.ConnectionStringName)]
[ConnectionStringName(AbpTenantManagementDbProperties.ConnectionStringName)]
public interface ITenantManagementDbContext : IEfCoreDbContext
{
DbSet<Tenant> Tenants { get; set; }

8
modules/tenant-management/src/Volo.Abp.TenantManagement.EntityFrameworkCore/Volo/Abp/TenantManagement/EntityFrameworkCore/TenantManagementDbContext.cs

@ -4,13 +4,9 @@ using Volo.Abp.EntityFrameworkCore;
namespace Volo.Abp.TenantManagement.EntityFrameworkCore
{
[ConnectionStringName(AbpTenantManagementConsts.ConnectionStringName)]
[ConnectionStringName(AbpTenantManagementDbProperties.ConnectionStringName)]
public class TenantManagementDbContext : AbpDbContext<TenantManagementDbContext>, ITenantManagementDbContext
{
public static string TablePrefix { get; set; } = AbpTenantManagementConsts.DefaultDbTablePrefix;
public static string Schema { get; set; } = AbpTenantManagementConsts.DefaultDbSchema;
public DbSet<Tenant> Tenants { get; set; }
public DbSet<TenantConnectionString> TenantConnectionStrings { get; set; }
@ -24,7 +20,7 @@ namespace Volo.Abp.TenantManagement.EntityFrameworkCore
{
base.OnModelCreating(builder);
builder.ConfigureTenantManagement(TablePrefix, Schema);
builder.ConfigureTenantManagement();
}
}
}

4
modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo/Abp/TenantManagement/MongoDb/AbpTenantManagementMongoDbContextExtensions.cs

@ -11,7 +11,9 @@ namespace Volo.Abp.TenantManagement.MongoDB
{
Check.NotNull(builder, nameof(builder));
var options = new TenantManagementMongoModelBuilderConfigurationOptions();
var options = new TenantManagementMongoModelBuilderConfigurationOptions(
AbpTenantManagementDbProperties.DbTablePrefix
);
optionsAction?.Invoke(options);

2
modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo/Abp/TenantManagement/MongoDb/ITenantManagementMongoDbContext.cs

@ -4,7 +4,7 @@ using Volo.Abp.MongoDB;
namespace Volo.Abp.TenantManagement.MongoDB
{
[ConnectionStringName(AbpTenantManagementConsts.ConnectionStringName)]
[ConnectionStringName(AbpTenantManagementDbProperties.ConnectionStringName)]
public interface ITenantManagementMongoDbContext : IAbpMongoDbContext
{
IMongoCollection<Tenant> Tenants { get; }

9
modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo/Abp/TenantManagement/MongoDb/TenantManagementMongoDbContext.cs

@ -4,21 +4,16 @@ using Volo.Abp.MongoDB;
namespace Volo.Abp.TenantManagement.MongoDB
{
[ConnectionStringName(AbpTenantManagementConsts.ConnectionStringName)]
[ConnectionStringName(AbpTenantManagementDbProperties.ConnectionStringName)]
public class TenantManagementMongoDbContext : AbpMongoDbContext, ITenantManagementMongoDbContext
{
public static string CollectionPrefix { get; set; } = AbpTenantManagementConsts.DefaultDbTablePrefix;
public IMongoCollection<Tenant> Tenants => Collection<Tenant>();
protected override void CreateModel(IMongoModelBuilder modelBuilder)
{
base.CreateModel(modelBuilder);
modelBuilder.ConfigureTenantManagement(options =>
{
options.CollectionPrefix = CollectionPrefix;
});
modelBuilder.ConfigureTenantManagement();
}
}
}

3
modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo/Abp/TenantManagement/MongoDb/TenantManagementMongoModelBuilderConfigurationOptions.cs

@ -5,7 +5,8 @@ namespace Volo.Abp.TenantManagement.MongoDB
{
public class TenantManagementMongoModelBuilderConfigurationOptions : MongoModelBuilderConfigurationOptions
{
public TenantManagementMongoModelBuilderConfigurationOptions([NotNull] string tablePrefix = AbpTenantManagementConsts.DefaultDbTablePrefix)
public TenantManagementMongoModelBuilderConfigurationOptions(
[NotNull] string tablePrefix = "")
: base(tablePrefix)
{
}

Loading…
Cancel
Save