Я могу опубликовать элементы из своей формы, если я сделаю прямую ссылку на названный элемент в параметрах контроллера. Я пытаюсь использовать FormCollection, поэтому мне не нужно вводить каждый элемент из формы в параметрах сообщения ActionResult.
Форма HTML:
@using (Html.BeginForm("legallabels", "Reports", FormMethod.Post, new { id = "reportForm", @class = "report-form col-9" }))
{
<div class="col-12">
<b>Beginning </b><input type="text" class="form-control col-2" id="beginningDatePicker" name="beginningDate" value="@DateTime.Today.Date.ToString("MM/dd/yyyy")" />
</div>
<input type="submit" value="submit">
}
Контроллер, использующий именованный параметр (beginDate):
[HttpPost]
public ActionResult LegalLabels(string beginningDate)
{
return View();
}
При использовании FormCollection он не передается в контроллер:
[HttpPost]
public ActionResult LegalLabels(FormCollection form)
{
return View();
}
Используя точку останова в контроллере, я вижу, что форма отправляется правильно, и все работает нормально, когда в параметрах указываются элементы формы (beginDate). Я посмотрел на похожие примеры кода, которые используют FormCollection, и они, кажется, работают нормально. Почему мои значения FormCollection не передаются в контроллер?