Refactor DIExtensions.AddUserManager to Use Generic TDbContext for Improved Flexibility.

This commit is contained in:
Developer 02
2024-06-13 13:44:51 +02:00
parent 8faed31baa
commit 43c98f9454
9 changed files with 39 additions and 30 deletions

View File

@@ -5,9 +5,10 @@ using Microsoft.EntityFrameworkCore;
namespace DigitalData.UserManager.Infrastructure.Repositories
{
public class GroupOfUserRepository : CRUDRepository<GroupOfUser, int, UserManagerDbContext>, IGroupOfUserRepository
public class GroupOfUserRepository<TDbContext> : CRUDRepository<GroupOfUser, int, TDbContext>, IGroupOfUserRepository
where TDbContext : DbContext
{
public GroupOfUserRepository(UserManagerDbContext dbContext) : base(dbContext)
public GroupOfUserRepository(TDbContext dbContext) : base(dbContext)
{
}

View File

@@ -1,12 +1,14 @@
using DigitalData.Core.Infrastructure;
using DigitalData.UserManager.Domain.Entities;
using DigitalData.UserManager.Infrastructure.Contracts;
using Microsoft.EntityFrameworkCore;
namespace DigitalData.UserManager.Infrastructure.Repositories
{
public class GroupRepository : CRUDRepository<Group, int, UserManagerDbContext>, IGroupRepository
public class GroupRepository<TDbContext> : CRUDRepository<Group, int, TDbContext>, IGroupRepository
where TDbContext : DbContext
{
public GroupRepository(UserManagerDbContext dbContext) : base(dbContext)
public GroupRepository(TDbContext dbContext) : base(dbContext)
{
}
}

View File

@@ -5,9 +5,10 @@ using Microsoft.EntityFrameworkCore;
namespace DigitalData.UserManager.Infrastructure.Repositories
{
public class ModuleOfUserRepository : CRUDRepository<ModuleOfUser, int, UserManagerDbContext>, IModuleOfUserRepository
public class ModuleOfUserRepository<TDbContext> : CRUDRepository<ModuleOfUser, int, TDbContext>, IModuleOfUserRepository
where TDbContext : DbContext
{
public ModuleOfUserRepository(UserManagerDbContext dbContext) : base(dbContext)
public ModuleOfUserRepository(TDbContext dbContext) : base(dbContext)
{
}

View File

@@ -1,12 +1,14 @@
using DigitalData.Core.Infrastructure;
using DigitalData.UserManager.Domain.Entities;
using DigitalData.UserManager.Infrastructure.Contracts;
using Microsoft.EntityFrameworkCore;
namespace DigitalData.UserManager.Infrastructure.Repositories
{
public class ModuleRepository : CRUDRepository<Module, int, UserManagerDbContext>, IModuleRepository
public class ModuleRepository<TDbContext> : CRUDRepository<Module, int, TDbContext>, IModuleRepository
where TDbContext : DbContext
{
public ModuleRepository(UserManagerDbContext dbContext) : base(dbContext)
public ModuleRepository(TDbContext dbContext) : base(dbContext)
{
}
}

View File

@@ -5,9 +5,10 @@ using Microsoft.EntityFrameworkCore;
namespace DigitalData.UserManager.Infrastructure.Repositories
{
public class UserRepRepository : CRUDRepository<UserRep, int, UserManagerDbContext>, IUserRepRepository
public class UserRepRepository<TDbContext> : CRUDRepository<UserRep, int, TDbContext>, IUserRepRepository
where TDbContext : DbContext
{
public UserRepRepository(UserManagerDbContext dbContext) : base(dbContext)
public UserRepRepository(TDbContext dbContext) : base(dbContext)
{
}

View File

@@ -5,11 +5,12 @@ using Microsoft.EntityFrameworkCore;
namespace DigitalData.UserManager.Infrastructure.Repositories
{
public class UserRepository : CRUDRepository<User, int, UserManagerDbContext>, IUserRepository
public class UserRepository<TDbContext> : CRUDRepository<User, int, TDbContext>, IUserRepository
where TDbContext : DbContext
{
private IModuleOfUserRepository _moduleOfUserRepo;
private IGroupOfUserRepository _groupOfUserRepo;
public UserRepository(UserManagerDbContext dbContext, IModuleOfUserRepository moduleOfUserRepo, IGroupOfUserRepository groupOfUserRepo) : base(dbContext)
public UserRepository(TDbContext dbContext, IModuleOfUserRepository moduleOfUserRepo, IGroupOfUserRepository groupOfUserRepo) : base(dbContext)
{
_moduleOfUserRepo = moduleOfUserRepo;
_groupOfUserRepo = groupOfUserRepo;

View File

@@ -1,5 +1,4 @@
using DigitalData.UserManager.Domain.Entities;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore;
namespace DigitalData.UserManager.Infrastructure.Repositories
{