@foreach (var answer in detail.Question.Answers)
{
var isSelected = detail.ResponseAnswers.Any(ra => ra.AnswerId == answer.Id);
@answer.Text
}
@* Display "Other" text response if it exists *@
@if (!string.IsNullOrEmpty(detail.TextResponse))
{
Other: @detail.TextResponse
}
break;
case QuestionType.Rating:
User Selected Rating:
@foreach (var answer in detail.Question.Answers.OrderBy(a => a.Id))
{
var isSelected = detail.ResponseAnswers.Any(ra => ra.AnswerId == answer.Id);
@answer.Text
}
break;
case QuestionType.Likert:
Selected Response:
@foreach (var answer in detail.Question.Answers.OrderBy(a => a.Id))
{
var isSelected = detail.ResponseAnswers.Any(ra => ra.AnswerId == answer.Id);
@answer.Text
}
break;
case QuestionType.Matrix:
Selected Response:
Option
Selected
@foreach (var answer in detail.Question.Answers)
{
var isSelected = detail.ResponseAnswers.Any(ra => ra.AnswerId == answer.Id);
@answer.Text
}
break;
case QuestionType.Ranking:
Original Order
@foreach (var answer in detail.Question.Answers)
{
var userIndex = detail.ResponseAnswers.FindIndex(ra => ra.AnswerId == answer.Id) + 1;
@userIndex
@answer.Text
}
User's Ranking
@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:
Image Selection:
@foreach (var answer in detail.Question.Answers)
{
var isSelected = detail.ResponseAnswers.Any(ra => ra.AnswerId == answer.Id);