public async Task <LectureModel> RemoveAsync(Guid id) { var lecture = await lectureRepository.GetQuery().FirstOrDefaultAsync(x => x.Id == id); if (lecture == null) { throw new ApplicationException("Объект не найден."); } lectureTagBinder.ResetTags(lecture); lectureRepository.Remove(lecture); await dataContext.SaveChangesAsync(); return(LectureMap.Map(lecture)); }
public Lecture ResetTags(Lecture lecture) { if (lecture.LectureTags == null) { lecture.LectureTags = new List <LectureTag>(); } else { foreach (var lectureTag in lecture.LectureTags) { lectureTagRepository.Remove(lectureTag); } lecture.LectureTags.Clear(); } return(lecture); }
public async Task <UserProfileModel> RemoveRole(Guid userId, Role role) { var user = await usersRepository.GetQuery().FirstOrDefaultAsync(x => x.Id == userId); if (user != null) { var userRoles = user.UserRoles.Where(x => x.Role == role).ToList(); foreach (var userRole in userRoles) { userRolesRepository.Remove(userRole); } await dataContext.SaveChangesAsync(); } return(UserProfileMap.Map(user)); }