asp.net-mvc – 如何使用枚举的MVC Html Helper .DropDownListFo
发布时间:2020-12-16 03:17:58 所属栏目:asp.Net 来源:网络整理
导读:在我的MVC 3 Razor应用程序中,我有一个带有枚举的模型.. 模型示例: public class EmployeeModel{ public enum Title { Accountant = 111,Sales = 222,Production = 333 } [Required] public string Name {get; set;} [Required] public Title JobTitle {get
在我的MVC 3 Razor应用程序中,我有一个带有枚举的模型..
模型示例: public class EmployeeModel { public enum Title { Accountant = 111,Sales = 222,Production = 333 } [Required] public string Name {get; set;} [Required] public Title JobTitle {get; set;} } 在我的视图中,我想使用Html助手来构建一个Html表单… 查看示例: @model ..Models.EmployeeModel @using (Html.BeginForm()) { @Html.LabelFor(m => m.Name) @Html.TextBoxFor(m => m.Name) <br> @Html.LabelFor(m => m.JobTitle) @Html.DropDownListFor(m => m.JobTitle,??How do I get Title enum values??) <br> <input type="submit /> } 我试图实现的DropDownListFor的输出如下所示: <select name="JobTitle"> <option value="-1">Choose a Job Title</option> <option value="111">Accountant</option> <option value="222">Sales</option> <option value="333">Production</option> </select> 我如何获得DropDownListFor<>帮助器根据模型的标题枚举创建一个select / option元素? 此外,是否可以使DropDownListFor<>帮助器添加一个额外的(不是枚举的一部分)类似于上面示例中的“选择一个职位”选项? 解决方法
你可能会得到一个带有枚举值名称的String []并从中创建一个下拉列表.在视图模型中,添加属性类型为SelectListItem的标题,并将枚举值和名称添加到该属性.您可以通过System.Enum类型获取名称和值.
var defaultItem = new SelectListItem(); defaultItem.Value = -1; defaultItem.Text = "Choose a title"; defaultItem.Selected = true; model.TitleSelectItems.add(defaultItem); String[] names = System.Enum.GetNames(typeof(Title)); Int[] values = System.Enum.GetValues(typeof(Title)); for (int i = 0; i<names.Length; i++) { var item = new SelectListItem(); item.Text = names[i]; item.Value = values[i]; model.TitleSelectItems.Add(item); } 这有点难看,但它会起作用. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
- .net – 如何组织资源文件?
- asp.net-mvc – ASP.NET MVC中的500内部服务器错
- asp.net 使用ObjectDataSource控件在ASP.NET中实
- asp.net-mvc-3 – 通过URL导致控制器的DateTime导
- ASP.NET 使用Swagger开发Web API接口项目
- asp.net-mvc – 为什么实体框架在更新父项时会插
- asp.net – asp:Gridview&asp:表格生成bor
- ASP.NET Core MVC内置服务的使用
- asp.net-core – 构建asp.net核心错误
- asp.net-mvc – MVC 4,复选框列表和我
热点阅读