我正在使用MVC 5.2.0,我正在尝试使用新的
Html.EnumDropDownListFor.这就是我设置值的方式:
//Model public class MyModel { public int SelectedEnumId { get; set; } public TestEnum MyEnum { get; set; } } //Enum public enum TestEnum : int { name1 = 1,name2 = 2 } //View @Html.EnumDropDownListFor(model => model.MyEnum,new { @class = "form-control" })
这是有效的,并且正在显示值.但是如何设置所选值(SelectedEnumId)?
通常我会用
//Not enum @Html.DropDownListFor(model => model.SelectedId,new SelectList(Model.myvalues,"Value","Text"))
有没有办法在MVC 5.1-5.2中使用新的Helper来做到这一点?或者我必须为此创建一个Extension方法?
解决方法
据我所知,确保在调用之前在模型中设置要选择的值
//Controller: ... myModel.TestEnum = TestEnum.name2; ... //On your view ... @Html.EnumDropDownListFor(model => model.TestEnum); ...