所以我有以下枚举:
public enum Type
{
A ,
S
}
目前我在视图中使用以下代码使用此枚举:
<div class="editor-label">
@Html.Label("Type")
</div>
<div class="editor-field">
@Html.DropDownListFor(model => model.Type, new SelectList(Enum.GetValues(typeof(Project.Domain.POCO.Type))))
@Html.ValidationMessageFor(model => model.Type)
</div>
然而,最初的想法是使用复选框而不是下拉列表,这只是暂时的解决方案。 每当我尝试使用@ Html.CheckBoxFor它需要一个布尔类型,有没有办法解决这个问题并继续使用我的enumtype而不是创建一个布尔值(因为枚举用于多个类,我必须做很多事情如果我要将其更改为布尔值,则更改
答案 0 :(得分:3)
您可以将枚举解析为布尔值,因为枚举类型也是int值:
A = 0,S = 1 ..
因为你只有两个值,所以你总是有0或1.这可以被解析成一个bool。请注意,这是一个非常脏的解决方案。
使用时:
Boolean.Parse((int)model.Type)
你会得到一个布尔。 A =假,S =真
但我不建议使用这种方法