@switch (detail.QuestionType)
{
case QuestionType.Text:
case QuestionType.Open_ended:
Answer: @detail.TextResponse
break;
case QuestionType.Multiple_choice:
case QuestionType.CheckBox:
case QuestionType.TrueFalse:
Answer:
@if (detail.Question.Type == QuestionType.TrueFalse)
{
}
else
{
}
break;
case QuestionType.Rating:
@if (detail.QuestionType == QuestionType.Rating)
{
User Selected rate
@foreach (var answer in detail.Question.Answers.OrderBy(a => a.Id))
{
-
@answer.Text
}
}
break;
case QuestionType.Likert:
Answer:
break;
case QuestionType.Matrix:
break;
case QuestionType.Ranking:
Original Order of Answers:
@foreach (var answer in detail.Question.Answers)
{
var userIndex = detail.ResponseAnswers.FindIndex(ra => ra.AnswerId == answer.Id) + 1;
-
@userIndex
@answer.Text
}
User Order of answers:
@for (int i = 0; i < detail.ResponseAnswers.Count; i++)
{
var ra = detail.ResponseAnswers[i];
var answer = detail.Question.Answers.FirstOrDefault(a => a.Id == ra.AnswerId);
-
@(i + 1)
@answer.Text
}
break;
case QuestionType.Image:
answers:
@foreach (var answer in detail.Question.Answers)
{
var isSelected = detail.ResponseAnswers.Any(ra => ra.AnswerId == answer.Id);
}
break;
case QuestionType.Slider:
break;
// Handle other question types as previously detailed
// Other cases as previously detailed
default:
Unsupported question type.
break;
}