【发布时间】:2015-06-26 22:12:12
【问题描述】:
我想在 ASP.net MVC 中将一个复选框绑定到一个整数(如下所示的 ISACTIVE 值)。
@Html.CheckBoxFor(model => model.ISACTIVE, new { htmlAttributes = new { @class = "form-control" } })
我知道 Html.CheckBoxFor 只接受 bool 作为输入,我可以在我的模型上添加一个新属性,但我使用的是已经存在的数据库,每次更新时,模型都会刷新。
有没有办法为 CheckBoxFor 创建一个新方法,该方法将根据复选框是否被选中返回一个整数?
【问题讨论】:
-
使用具有布尔属性的视图模型(并且您只能将
CheckBoxFor()用于布尔属性) -
在发送模型时为什么不只返回 bool ...我的意思是除了 0 发送 True 和 0 发送 False 以外的正数。
-
@StephenMuecke 我不能这样做,因为每次数据库更新时我的模型都会恢复到原始状态。我正在寻找一种方法来更改原始 CheckBoxFor 方法或添加一个新的类似方法,将 bool 输入更改为整数。
-
@TusharGupta 我假设你建议我添加一个新的帮助方法,将 int 更改为 bool?那会很好,但是我怎样才能让上面的代码行那样工作呢?
-
视图模型不是数据模型。 What is a view model in MVC。每个视图都应该有一个视图模型!
标签: c# asp.net asp.net-mvc checkbox html.checkbox