public void UpdateDelegationRoles(DelegationRolesDTO delegationRoles) { if (delegationRoles != null) { var delegableRoles = _unitOfWork.DelegationRolesRepository.AsQueryable().Where(dr => dr.RoleId == delegationRoles.RoleId) .Select(dr => dr.DelegationRoleId) .ToArray(); if (delegableRoles != null && delegableRoles.Length != 0) { DeleteDelegationRoles(delegationRoles.RoleId); foreach (var delegationRoleId in delegationRoles.DelegationRoleIds) { { _unitOfWork.DelegationRolesRepository.Add(new DelegationRoles { RoleId = delegationRoles.RoleId, DelegationRoleId = delegationRoleId }); } } } else { foreach (var delegationRoleId in delegationRoles.DelegationRoleIds) { _unitOfWork.DelegationRolesRepository.Add(new DelegationRoles { RoleId = delegationRoles.RoleId, DelegationRoleId = delegationRoleId }); } } } _unitOfWork.Save(); }
public void SaveDelegationRoles(DelegationRolesDTO delegationRoles) { var newRoleId = _unitOfWork.RoleRepository.AsQueryable().Where(ur => (ur.Name == delegationRoles.RoleName)).Select(ur => ur.Id).ToList().LastOrDefault(); foreach (var delegationRoleId in delegationRoles.DelegationRoleIds) { _unitOfWork.DelegationRolesRepository.Add(new DelegationRoles { RoleId = newRoleId, DelegationRoleId = delegationRoleId }); } _unitOfWork.Save(); }