我在数据层中有一个枚举,我想在我的网站项目中使用其下拉列表。我在数据层中的枚举是:
namespace SME.DAL.Entities.Enums
{
public enum EntityState
{
Open,
Freezed,
Canceled,
Completed,
Terminated,
ReadOnly
}
}
如何在网站的页面中列出其选择列表并使用它?我正在使用ASP.NET MVC 4。
简单示例:
控制器:
public ViewResult SomeFilterAction()
{
var EntityState = new SelectList(Enum.GetValues(typeof(EntityState)).Cast<EntityState>().Select(v => new SelectListItem
{
Text = v.ToString(),
Value = ((int)v).ToString()
}).ToList(),"Value","Text");
return View(EntityState)
}
查看:
@model System.Web.Mvc.SelectList
@Html.DropDownList("selectedEntityState",Model)
好吧,如果您使用的是MVC 5.1,他们最近添加了一个助手来创建枚举的下拉列表。但是,由于您使用的是MVC 4,您将不得不一起入侵。
那里有一些示例,如果您搜索了它,则在此网站上已经多次回答。
如何从ASP.NET MVC中的枚举创建下拉列表?