У меня проблемы с получением <select>
опций для отправки данных с помощью asp-формы. У меня есть значение (examDetails
) в моем TestingController
, которое является экземпляром объекта Exam
. Я работаю над страницей редактирования для этих экзаменов, которая использует внешний API как часть отдельного проекта для взаимодействия с базой данных.
Я могу успешно использовать поля ввода для изменения examDetails
из Edit.cshtml, но как только я пытаюсь использовать SelectList
, отправленное значение всегда равно null
. Если я установил одно из полей SelectList
как [Required]
и выбрал значение, то при отправке формы появится поле null
.
<form asp-page-handler="Customer" method="get">
<div class="form-group">
<label asp-for="examDetails.Type" class="control-label"></label>
<select asp-for="examDetails.Type" asp-items="@FERazor.Controller.TestingController.TypeSL" name="TypeNameTest"
class="form-control">
</select>
<span asp-validation-for="examDetails.Type" class="text-danger">
</span>
</div>
<div class="form-group">
<input type="submit" value="Save" class="btn btn-default" />
</div>
</form>
И когда я проверяю работающую html-страницу, она действительно имеет значение. Если я отправлю это, чтобы сказать OnPost
в качестве параметра, я получу значение.
<select name="TypeNameTest" class="form-control" id="examDetails_Type">
<option selected="selected" value="Final">Final</option>
<option value="Midterm">Midterm</option>
<option value="No Exam">No Exam</option>
<option value="Test">Test</option>
</select>