Jak przekazać listę IEnumerable do kontrolera w MVC, w tym stan pola wyboru?
Mam aplikację mvc, w której używam takiego modelu:
public class BlockedIPViewModel
{
public string IP { get; set; }
public int ID { get; set; }
public bool Checked { get; set; }
}
Teraz mam widok, aby powiązać listę w ten sposób:
@model IEnumerable<OnlineLotto.Web.Models.BlockedIPViewModel>
@using (Html.BeginForm())
{
@Html.AntiForgeryToken()
}
@foreach (var item in Model) {
<tr>
<td>
@Html.HiddenFor(x => item.IP)
@Html.CheckBoxFor(x => item.Checked)
</td>
<td>
@Html.DisplayFor(modelItem => item.IP)
</td>
</tr>
}
<div>
<input type="submit" value="Unblock IPs" />
</div>
Teraz mam kontroler do odbierania akcji z przycisku przesyłania:
public ActionResult BlockedIPList(IEnumerable<BlockedIPViewModel> lstBlockedIPs)
{
}
Ale otrzymuję wartość null do lstBlockedIPs podczas przechodzenia do akcji kontrolera. Muszę tutaj uzyskać stan pola wyboru. Proszę pomóż.