Я строю анкету.Когда пользователь нажимает на возможность ответа на вопрос с несколькими вариантами ответа (это переключатель), я вызываю метод действия, чтобы сохранить этот ответ.
Код:
<script language="javascript">
$(document).ready(function () {
$('.MCQRadio').click(function () {
var question_id = $(this).attr('question-id');
var mcq_id = $(this).attr('mcq-id');
$.ajax({
url: '/SaveSurveyAnswers/SaveMCQAnswer',
data: { "mcq_id": mcq_id, "question_id": question_id },
success: function (data) {
}
});
});
});
Код для сохранения ответа:
public EmptyResult SaveMCQAnswer(int mcq_id, int question_id)
{
MCQ_Answers mcqa = null;
try
{
mcqa = db.MCQ_Answers.Single(x => x.question_ID == question_id);
}
catch (InvalidOperationException e)
{
}
if (mcqa != null)
{
mcqa.mcq_id = mcq_id;
}
else
{
MCQ_Answers mcq_answer = new MCQ_Answers()
{
question_ID = question_id,
respondent_id = 1
};
db.MCQ_Answers.AddObject(mcq_answer);
}
db.SaveChanges();
return new EmptyResult();
}
Если вопрос имеет 5 вариантов ответа, и янажимайте на них случайно и быстро, а затем возвращайтесь на предыдущую страницу, т.е. когда я вернусь, правильный ответ не будет сохранен.Должен ли я использовать многопоточность, чтобы убедиться, что правильный ответ сохранен?И как?
Спасибо