Asp.net

在 ASP.NET MVC 中使用列舉填充 SelectList

  • February 7, 2014

我的數據層中有一個列舉,我想在我的網站項目中使用它的下拉列表。我在數據層的列舉是:

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,他們最近添加了一個幫助程序來從 Enums 創建下拉列表。但是,由於您使用的是 MVC 4,您將不得不一起破解一些東西。

那裡有一些例子,如果你搜尋過,這個網站上已經回答了很多次了。

如何從 ASP.NET MVC 中的列舉創建下拉列表?

引用自:https://stackoverflow.com/questions/21623025