C# 使用formcollection-MVC从视图到控制器获取复选框值

C# 使用formcollection-MVC从视图到控制器获取复选框值,c#,asp.net-mvc-5,C#,Asp.net Mvc 5,视图中的代码 <input type="checkbox" value="@Model.Employee.IsActive" name="chkIsActive" id="chkIsActive" @(Model.Employee.IsActive == true ? "checked" : "") /> 我也试过这样做 rate.IsActive = collection["chkIsActive"] == "on" ? true : false; 它给我的价值是“价值”,而不

视图中的代码

<input type="checkbox" value="@Model.Employee.IsActive" name="chkIsActive" id="chkIsActive" @(Model.Employee.IsActive == true ? "checked" : "") />
我也试过这样做

rate.IsActive = collection["chkIsActive"] == "on" ? true : false;
它给我的价值是“价值”,而不是真的假。有人能指引我吗?
谢谢。

你究竟为什么要使用
FormCollection
并手动生成html。使用
@Html.CheckBoxFor(m=>m.IsActive)
并将POST方法更改为
public ActionResult UpdateMaster(员工模型)
——这一切都是现成的,您可以获得真正的双向模型绑定。当前代码的一个问题是,未选中的复选框不会发回,因此它不会存在,除非在您选择时选中该复选框submit@StephenMuecke谢谢你的回复,这是正确的,但我想知道我如何才能这样工作?请阅读我评论的第二部分-
chkIsActive
如果未选中复选框,则将不存在于
FormCollection
中。但即使选中了
string cb=collection[“chkIsActive”],它也不会给我任何值IsActive
的值为
false
,则code>为我返回
“on”
,否则返回
“value”
rate.IsActive = collection["chkIsActive"] == "on" ? true : false;