【发布时间】:2017-03-20 16:01:12
【问题描述】:
我正在使用 MVC 5.0 开发一个项目,我的代码是这样的。
<div class="form-group">
@Html.LabelFor(model => model.IsActive, "Status", new { @class = "control-label col-md-3 col-md-offset-1" })
<div class="col-md-5">
@Html.EditorFor(model => model.IsActive, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.IsActive)
</div>
</div>
它工作正常,但问题是它添加了一个额外的值“未设置”以及值“真”和“假”。如何从下拉列表中过滤“未设置”值。
谢谢 乌特帕尔
【问题讨论】:
-
你不能。您为默认实现的
nullable bool创建了EditorFor()方法 - 如果您不想允许null- 将属性更改为bool并使用@Html.CheckboxFor(model.IsActive) -
您的 IsActive 列是否可以保存空值?这通常会创建“未设置”
-
@Emil 是的,它是由实体框架生成的可为空的列。那么我的问题的出路是什么。
-
@Utpal 您可以更改模型以删除 IsActive 接受 null
-
@Emil 还有其他选择吗,因为我无权更改模型类
标签: asp.net asp.net-mvc twitter-bootstrap asp.net-mvc-4 asp.net-mvc-5