@HTML.CheckBoxFor() Проблема с MVC 3.0?

#asp.net-mvc #checkboxfor

#asp.net-mvc #checkboxfor

Вопрос:

У меня есть цикл, который генерирует список элементов с флажком для выбора

 foreach(var i in item)
{
    @Html.CheckBoxFor(x=>i.Checked)
    @Html.labelfor(x=>i.price)
}
  

У меня есть 3 элемента. итак, это приводит к созданию кода ниже три раза

 <input id="paid" name="paid" value="true" type="checkbox">
<input name="paid" value="false" type="hidden">
  

Теперь, когда я пытаюсь получить доступ к проверенным ценам в моем контроллере

 string[] paid = Request.Form["paid"].split(',');    
  

Я должен получить 3 значения true / false, независимо от того, сколько цен было проверено пользователем

Вместо этого он возвращает 3 столько, сколько проверил пользователь. Допустим, если пользователь проверяет одну цену, то в моем контроллере. Я получу 3 1 = 4 значения true / false.

Как я могу избавиться от этой проблемы?

Комментарии:

1. Все, чего я пытаюсь достичь, это: если пользователь проверяет первую цену в списке из 3 цен. Я хотел бы получить доступ к этой цене в контроллере.

Ответ №1:

Я думаю, что вы ищете этот пост. http://forums.asp.net/t/1314753.aspx

Комментарии:

1. в какой-то степени это то же самое. Но ЭТО нечто большее. что мне нужно, так это если мой цикл for отображает 4 флажка, тогда мне нужно только 4 значения true / false для моего контроллера, не более того. Но на данный момент я получил его с дублирующим строковым массивом с ArralyList и if (условием). Я считаю, что это неправильный способ сделать.