@Html.CheckBox("orderNumbers", new { value = 1 })
@Html.CheckBox("orderNumbers", new { value = 2 })
@Html.CheckBox("orderNumbers", new { value = 3 })
@Html.CheckBox("orderNumbers", new { value = 4 })
@Html.CheckBox("orderNumbers", new { value = 5 })
[HttpPost]
public ActionResult MarkAsCompleted(IEnumerable<int> orderNumbers) { }
[HttpPost]
public ActionResult MarkAsCompleted(IEnumerable<string> orderNumbers) { }
Если я использую первую сигнатуру в своем методе действия, я получаю пустой IEnumerable
.
Если я использую вторую сигнатуру, я получаю значения, но я также получаю ложное значение для невыбранных значений (из-за паттерна MVC, который затеняет все флажки скрытым полем).
Например, я получу что-то вроде orderNumbers = { "1", "2", "false", "4", "false" }
Почему я не могу просто получить список чисел?