4
我已經強類型視圖,示出數據從回傳複選框強類型視圖
ViewModel
public class GoldSetnUsers
{
bool Public { get; set; }
public List<GSUsers> gsUsers { get; set; }
public GoldSetnUsers()
{
UsersContext _dbm = new UsersContext();
this.gsUsers = _dbm.UserProfiles.Select(n => new GSUsers { UserName = n.UserName, isEditor = false, isReviewer = false }).ToList();
}
public class GSUsers
{
public string UserName { get; set; }
public bool isEditor { get; set; }
public bool isReviewer { get; set; }
}
}
控制器HTTPGET方法顯示該視圖
問題是,後回模型返回所有行復選框爲false。儘管如此,表格外的複選框Public也會返回正確的回傳值。
控制器回傳碼
[HttpPost]
public ActionResult Create(GoldSetnUsers newGS)
{
if (ModelState.IsValid)
{ // newGS gets me value
}
}
查看
@model mvc2db.Models.GoldSetnUsers
@using BootstrapSupport;
@using (Html.BeginForm()) {
@Html.ValidationSummary(true)
@Html.BeginControlGroupFor(model=>model.Public)
@Html.LabelFor(model => model.Public,new {@class="control-label"})
<div class="controls">
@Html.EditorFor(model => model.Public,new {@class="input-xlarge"})
@Html.ValidationMessageFor(model => model.Public,null,new{@class="help-inline"})
</div>
<div class="controls">
<table class="table">
<thead>
<tr>
<th>Name</th>
<th>Reviewer</th>
<th>Editor</th>
</thead>
<tbody>
@foreach (var item in Model.gsUsers) {
<tr>
<td>
@Html.DisplayFor(modelItem => item.UserName)
</td>
<td>
@Html.EditorFor(modelItem => item.isEditor)
</td>
<td>
@Html.EditorFor(modelItem => item.isReviewer)
</td>
</tr>
}
</tbody>
</table></div>
@Html.EndControlGroup()
<div class="form-actions">
<button type="submit" class="btn btn-primary">Save changes</button>
<button class="btn">Cancel</button>
</div>
</fieldset>
}
解決,謝謝。下面是代碼 @for(INT I = 0;我 @ Html.EditorFor(型號=> model.gsUsers [I] .isEditor)* @ @ Html.EditorFor(型號=> model.gsUsers [I] .isReviewer) } –
user219628
其他幫助文章/對這個問題 帖http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx http://stackoverflow.com/questions/16070291/select-all-tr-of-a- table-and-send-it-the-controller-using-checkbox-in-mvc-4?rq = 1 http://stackoverflow.com/questions/17037858/how-to-pass-ienumerable-list-到控制器的功能於MVC-包括-複選框狀態?RQ = 1 – user219628