9
我有一個類如下CheckBoxList的多重選擇:難度模型綁定背部
public class UserRoleModel
{
public string Role { get; set; }
public bool UserRole { get; set; }
}
和public UserRoleModel[] UserRoles { get; set; }
我的控制器如下:
public ActionResult CreateUser()
{
UserDetailsModel model = new UserDetailsModel();
return View(model);
}
[HttpPost]
public ActionResult CreateUser(UserDetailsModel model)
{
return View(model);
}
在我看來,我有
>@foreach (var item in Model.UserRoles)
{
name = "UserRoles"+ ".Value["+ i + "]";
id= "UserRoles" + "_Value[" + i++ + "]";
selected = item.UserRole ? "checked=\"checked\"" : "";
<p>
<input type="checkbox" name="@name" id="@id" @selected value="true" />
<label for="@id">@item.Role</label>
<input type="hidden" name="@name" value="false" />
</p>
}
儘管在我的視圖中相應地顯示了值,但UserRoles沒有模型綁定。我錯過了什麼或有沒有更好更清潔的方法?
有一件事我沒有注意到,直到我真的嘗試過它 - @ Html.EditorFor(x => x.Roles)實際上將遍歷集合。乾淨的確。 – chris 2012-03-13 16:51:24