diff --git a/Oqtane.Server/Repository/RoleRepository.cs b/Oqtane.Server/Repository/RoleRepository.cs index 6f8573e4..9239155a 100644 --- a/Oqtane.Server/Repository/RoleRepository.cs +++ b/Oqtane.Server/Repository/RoleRepository.cs @@ -20,10 +20,12 @@ namespace Oqtane.Repository public class RoleRepository : IRoleRepository { private readonly IDbContextFactory _dbContextFactory; + private readonly ISettingRepository _settings; - public RoleRepository(IDbContextFactory dbContextFactory) + public RoleRepository(IDbContextFactory dbContextFactory, ISettingRepository settings) { _dbContextFactory = dbContextFactory; + _settings = settings; } public IEnumerable GetRoles(int siteId) @@ -97,10 +99,7 @@ namespace Oqtane.Repository } //remove settings for role - foreach (var setting in db.Setting.Where(item => item.EntityName == EntityNames.Role && item.EntityId == roleId)) - { - db.Setting.Remove(setting); - } + _settings.DeleteSettings(EntityNames.Role, roleId); Role role = db.Role.Find(roleId); db.Role.Remove(role);