Esempio n. 1
0
        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));
        }
Esempio n. 2
0
        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);
        }
Esempio n. 3
0
        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));
        }