public IList <GetLevelQuestionsResult> GetQuestionListLevelPlanetName(GetLevelQuestionsDto getLevelQuestions) { var resultPlanet = _databaseContext.Planets.FirstOrDefault(p => p.PlanetName == getLevelQuestions.PlanetName); var numberOfLevels = _levelRepository.GetNumberOfLevelsForPlanet(getLevelQuestions.PlanetName); var result = GetAll().Where(x => x.Level.NumberLevel == getLevelQuestions.NumberLevel && x.Level.Planet.PlanetId == resultPlanet?.PlanetId); var resultList = new List <GetLevelQuestionsResult>(); foreach (var q in result) { resultList.Add(new GetLevelQuestionsResult() { QuestionText = q.QuestionText, RightAnswer = q.RightAnswer, FirstWrongAnswer = q.FirstWrongAnswer, SecondWrongAnswer = q.SecondWrongAnswer, ThirdWrongAnswer = q.ThirdWrongAnswer, QuestionId = q.QuestionId, TotalNumberOfLevelsForPlanet = numberOfLevels.ToString() }); } return(resultList); }
public GetLevelQuestionsResult GetRandomQuestionForLevelPlanetName(GetLevelQuestionsDto getLevelQuestions) { var questionList = GetQuestionListLevelPlanetName(getLevelQuestions); var position = new Random().Next(0, questionList.Count); return(questionList[position]); }
public IList <GetLevelQuestionsResult> GetQuestionListLevelPlanetName(GetLevelQuestionsDto getLevelQuestions) { var result = _databaseContext.Levels .Include(l => l.QuestionsList) .Include(l => l.Planet) .Where(l => l.NumberLevel == getLevelQuestions.NumberLevel && l.Planet.PlanetName == getLevelQuestions.PlanetName).ToList(); var resultList = new List <GetLevelQuestionsResult>(); foreach (var q in result) { resultList.Add(new GetLevelQuestionsResult() { QuestionText = q.QuestionsList[0].QuestionText, QuestionId = q.QuestionsList[0].QuestionId }); } return(resultList); }