使用 MVC4 Razor 和 Entityframework 5。我有一个名为组织的表,其中有一个整数 TypeID 字段,我创建了一个枚举类型。在代码中,我可以使用枚举设置和比较 typeid。
public enum OrganisationType : int
{
Company = 1,
Department = 2,
Location = 4
}
但是,当我使用默认的 vs2012 mvc 4 razor 模板或通过 mvcscaffolding nuget 包生成 create.cshtml 时,都会忽略 TypeID 字段。我正在考虑修改 tt 模板,以便它们自动生成。但最初可以在下拉列表中显示枚举的描述性名称。
最佳答案
这就是解决方案,遗憾的是修改 TT 模板以实现自动化并不简单。
@Html.DropDownListFor(model => model.TypeID, new SelectList(Enum.GetValues(typeof(Models.OrganisationType))))
这将显示一个带有文本值的下拉组合,即公司、部门、位置。
关于asp.net-mvc - DropDownListFor EF5 中的枚举,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12460152/