/// <summary> /// Создание вопроса /// </summary> /// <param name="question">Объект вопроса</param> public int CreateQuestion(Question question) { int id; Context.Questions.Add(question); Context.SaveChanges(); id = question.Id; return(id); }
/// <summary> /// Создание пользователя /// </summary> /// <param name="userAuth">Объект аутенфикации пользователя</param> public void CreateUser(UserAuthentication userAuth) { User user = new User(); user.Login = userAuth.Login; user.Password = userAuth.Password; user.Role = Context.Users.Any(n => n.Role == AdminRole) ? UserRole : AdminRole; user.Acting = true; Context.Users.Add(user); Context.SaveChanges(); }
/// <summary> /// Создание теста /// </summary> /// <param name="principal">Объект аутенфицированого пользователя</param> /// <param name="subject">Предмет</param> /// <param name="easyCount">Количество легких вопросов</param> /// <param name="mediumCount">Количество вопросов средней сложности</param> /// <param name="hardCount">Количество сложных вопросов</param> /// <returns>Номер созданого теста</returns> public int CreateTest(IPrincipal principal, SubjectEnum subject, int easyCount, int mediumCount, int hardCount) { Test test = new Test(); List <int> idQuestions; Context.Tests.Add(test); Context.SaveChanges(); test.UserLogin = principal.Identity.Name; test.Subject = subject; for (int i = 0; i < 3; i++) { switch (i) { case 0: idQuestions = GetQuestions(subject, LevelDifficultyEnum.Easy, easyCount); test.EasyCount = idQuestions.Count; break; case 1: idQuestions = GetQuestions(subject, LevelDifficultyEnum.Medium, mediumCount); test.MediumCount = idQuestions.Count; break; default: idQuestions = GetQuestions(subject, LevelDifficultyEnum.Hard, hardCount); test.HardCount = idQuestions.Count; break; } foreach (int idQuestion in idQuestions) { Answer answer = new Answer(); answer.QuestionId = idQuestion; answer.TestId = test.Id; Context.Answers.Add(answer); } } CalculateMaxResult(test); Context.SaveChanges(); return(test.Id); }