如何在viewmodel中创建可选的是/否单选按钮
假设我有很长的forms,用户可以输入许多不同的可选值。
其中一个可选值是布尔值。 根据用户输入,我需要在我的数据库中执行以下操作:
- 如果“是”,则在数据库中添加“1”
- 如果为“否”,则在数据库中添加“0”
- 如果输入non,则在数据库中添加“null”
但是,我能找到的最正常的viewmodel / razor代码如下:
@Html.LabelFor(m => m.FurnitureIsIncluded) @Html.RadioButtonFor(model => model.FurnitureIsIncluded, true) Ja
这里我的值将为false,作为布尔值的默认值。
在MVC中解决这个问题的方法是什么?
在视图模型中为FurnitureIsIncluded
使用可空的bool
@Html.RadioButtonFor(m => m.FurnitureIsIncluded, "true")Yes @Html.RadioButtonFor(m => m.FurnitureIsIncluded, "false")No @Html.RadioButtonFor(m => m.FurnitureIsIncluded, "", Model.FurnitureIsIncluded.HasValue ? null : new { @checked = "checked" })Cant decide
然后,这将根据选择回发true
或false
或null
。 然后,您需要测试true / false以将值保存为“1”或“0”
- 如何在ASP.NET MVC中使用多个表单元素
- 如何在Asp.Net MVC 4中模拟HttpContext.User.Identity.Name
- IRouteConstraint MVC4上的HttpContextBase.Session和HttpContext.Current.Session都为null
- 为什么我的区域特定Web API可以从所有其他区域访问?
- MVC Web API:URL参数值中的点
- MVC在视图中显示文件夹中的文件
- 使用3层体系结构validationASP.NET MVC应用程序中的业务规则的更好方法是什么?
- 持久化entity framework查询缓存
- WebImage裁剪到正方形