MVC RadioButtonFor Wie &, Was zu POSTEN, zurück zum Controller
Neu mit C# und MVC, so entschuldigen, im Voraus für die Buchung etwas, was ist, ist wohl offensichtlich.Ich habe mir ähnliche Antworten, aber kann immer noch nicht sehen, wie und mit welchem Wert in der RadioButtonFor sollten so eingesetzt werden, dass es Gebucht werden können, werden zurück an den controller.
Controller
[HttpPost]
public ActionResult Score(ExamViewModel exam)
{
const int AddCorrect = 1;
var correct = from c in db.Answers
where c.ID == 1
select c.CorrectAnswer;
if (ModelState.IsValid)
{
if (correct == exam.CorrectAnswer)
{
ViewData["message"] = "Correct Answer!";
return View("Results");
}
else
{
var feedback = from g in db.Questions
where g.ID == 1
select g.GrammarPoint;
ViewData["message"] = "That's not the right answer.";
ViewData["feedback"] = feedback;
return View("Results");
}
}
return View("Results");
Und der Blick
@model AccessEsol.Models.ExamViewModel
@{
ViewBag.Title = "TakeTest";
}
<h2>TakeTest</h2>
@using (Html.BeginForm()) {
@Html.AntiForgeryToken()
@Html.ValidationSummary(true)
<fieldset>
<div class="display-label">
<h3>Click the correct answer:</h3>
</div>
<div class="display-field">
<strong>@Html.DisplayFor(model => model.Text.Text )</strong>
</div>
@Html.DisplayFor(model => model.Foil1.Foil1)
@Html.RadioButtonFor(model =>model.Foil1, "Incorrect" )
@Html.DisplayFor(model => model.Foil2.Foil2)
@Html.RadioButtonFor(model => model.Foil2, "Incorrect" )
@Html.DisplayFor(model => model.Foil3.Foil3)
@Html.RadioButtonFor(model => model.Foil3, "Incorrect")
@Html.DisplayFor(model => model.CorrectAnswer.CorrectAnswer)
@Html.RadioButtonFor(model => model.CorrectAnswer, "Correct")
<p>
<input type="submit" value="Submit Answers" />
</p>
</fieldset>
}
Ich habe auch versucht, übergeben Sie eine Zeichenfolge aus der CorrectAnswer in die Partitur Controller, ohne Erfolg.Viel geschätzt, wenn Sie zeigen können, wie kann geprüft RadioButton Wert übergeben werden kann, zurück an den Controller?
InformationsquelleAutor Stefan Piskorski | 2014-01-02
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sollten Sie nicht haben 3 verschiedene Eigenschaften, sondern eine einzige, die enthält die Antwort. Dies wird Ihnen ermöglichen, die Gruppe der Optionsfelder und in der Lage sein zu wählen, nur einer von Ihnen:
und dann in deinem controller Aktion überprüfen Sie, ob die
Answer
- Eigenschaft Wert, der gesendet wird, ist der richtige für diese Frage. Wie Sie sehen können aus die Aussicht wir haben mit mehreren Antworten für die Frage und dem Wert ist, was get an den server gesendet. In der Regel verwenden Sie die ID der Antwort als Wert und auf dem server, die Sie vergleichen können, ob dies die richtige Antwort für die Frage.InformationsquelleAutor Darin Dimitrov