IwbZeroEFModule.cs 1.1 KB

12345678910111213141516171819202122232425262728293031323334
  1. using System.Reflection;
  2. using Abp.Domain.Uow;
  3. using Abp.EntityFramework;
  4. using Abp.Modules;
  5. using Castle.MicroKernel.Registration;
  6. using IwbZero.EntityFramework;
  7. using IwbZero.MultiTenancy;
  8. namespace IwbZero
  9. {
  10. /// <summary>
  11. /// Entity framework integration module for ASP.NET Boilerplate Zero.
  12. /// </summary>
  13. [DependsOn(typeof(IwbZeroModule), typeof(AbpEntityFrameworkModule))]
  14. public class IwbZeroEfModule : AbpModule
  15. {
  16. public override void PreInitialize()
  17. {
  18. Configuration.ReplaceService(typeof(IConnectionStringResolver), () =>
  19. {
  20. IocManager.IocContainer.Register(
  21. Component.For<IConnectionStringResolver, IDbPerTenantConnectionStringResolver>()
  22. .ImplementedBy<DbPerTenantConnectionStringResolver>()
  23. .LifestyleTransient()
  24. );
  25. });
  26. }
  27. public override void Initialize()
  28. {
  29. IocManager.RegisterAssemblyByConvention(Assembly.GetExecutingAssembly());
  30. }
  31. }
  32. }