public async Task DeleteDepartment(int departmentId)
        {
            var existingDepartment = await _context.Departments.SingleOrDefaultAsync(r => r.Id == departmentId);

            if (null != existingDepartment)
            {
                _context.Remove(existingDepartment);
                await _context.SaveChangesAsync();
            }

            var departmentUsers = await _userContext.Users.Where(x => x.DepartmentId == departmentId).ToListAsync();

            if (departmentUsers.Any())
            {
                foreach (var departmentUser in departmentUsers)
                {
                    departmentUser.DepartmentId = 0;
                }

                await _userContext.SaveChangesAsync();
            }
        }
Beispiel #2
0
        public async Task DeleteRole(int roleId)
        {
            var existingRole = await _context.Roles.SingleOrDefaultAsync(r => r.RoleId == roleId);

            if (null != existingRole)
            {
                _context.Remove(existingRole);
                await _context.SaveChangesAsync();
            }

            var userBelongingToRole = await _userContext.Users.Where(x => x.RoleId == roleId).ToListAsync();

            if (userBelongingToRole.Any())
            {
                foreach (var roleUser in userBelongingToRole)
                {
                    roleUser.RoleId = 0;
                }

                await _userContext.SaveChangesAsync();
            }
        }