VberZeroEntityFrameworkModule.cs 994 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. using Abp.Domain.Uow;
  2. using Abp.EntityFrameworkCore;
  3. using Abp.Modules;
  4. using Abp.Reflection.Extensions;
  5. using Castle.MicroKernel.Registration;
  6. using VberZero.EntityFramework;
  7. using VberZero.MultiTenancy;
  8. namespace VberZero;
  9. [DependsOn(
  10. typeof(VberZeroModule),
  11. typeof(AbpEntityFrameworkCoreModule)
  12. )]
  13. public class VberZeroEntityFrameworkModule : AbpModule
  14. {
  15. public override void PreInitialize()
  16. {
  17. Configuration.ReplaceService(typeof(IConnectionStringResolver), () =>
  18. {
  19. IocManager.IocContainer.Register(
  20. Component.For<IConnectionStringResolver, IDbPerTenantConnectionStringResolver>()
  21. .ImplementedBy<DbPerTenantConnectionStringResolver>()
  22. .LifestyleTransient()
  23. );
  24. });
  25. }
  26. public override void Initialize()
  27. {
  28. IocManager.RegisterAssemblyByConvention(typeof(VberZeroModule).GetAssembly());
  29. }
  30. public override void PostInitialize()
  31. {
  32. }
  33. }