Esempio n. 1
0
        public async Task <QuestionCount> GetNumberOfQuestionsAsync(string userId, int categoryId, string matchString)
        {
            var questionCount = new QuestionCount();
            var questionList  = _dbContext.Question.Where(u => u.CreatedByUserId.Equals(userId));

            if (categoryId != 0)
            {
                questionList = questionList.Where(x => x.CategoryID == categoryId);
            }
            if (matchString != null)
            {
                questionList = questionList.Where(x => x.QuestionDetail.ToLowerInvariant().Contains(matchString.ToLowerInvariant()));
            }
            await questionList.ForEachAsync(question =>
            {
                switch (question.DifficultyLevel)
                {
                case DifficultyLevel.Easy:
                    questionCount.EasyCount++;
                    break;

                case DifficultyLevel.Medium:
                    questionCount.MediumCount++;
                    break;

                case DifficultyLevel.Hard:
                    questionCount.HardCount++;
                    break;
                }
            });

            return(questionCount);
        }
Esempio n. 2
0
 public override string ToString()
 {
     return($"{Id.ToBitString()}\r\n{this.ToBitString()}\r\n{QuestionCount.ToBitString()}\r\n{AnswerCount.ToBitString()}\r\n{AuthorityCount.ToBitString()}\r\n{AdditionalCount.ToBitString()}");
 }