我已经搜索了一下,无法专门针对我的问题找到答案。
我有一个Enum:
public enum CodeType
{
NotSpecified,
Absent,
NoAbsence,
Other,
Missing
}
以上枚举存储在结构中。我正在尝试使用DropDownList在视图中编辑存储的Enum,这很有效,除了我唯一的问题是我试图将DropDownList的默认值设置为模型的存储Enum。见下文:
@Html.DropDownList("c", EnumHelper.GetSelectList(typeof(CodeType)),Enum.GetValues(typeof(CodeType)))
作为第二个论点,我尝试过使用:
@Html.DropDownList("c", EnumHelper.GetSelectList(typeof(CodeType)),Enum.GetValues(typeof(Model.CodeType.ToString())))
但是,它确实将存储的Enum值显示为DropDownList中的字符串,但是如果用户点击提交按钮,我会得到一个null变量的错误,除非用户显式单击DropDownList并选择一个项目。 / p>
如何才能正确使用Model.CodeType作为DropDownList中的默认值?
答案 0 :(得分:1)
在将模型传递到视图之前,尝试从控制器的GET方法中将Model.CodeType设置为所需的枚举。