在MVC開發中我們常常用到枚舉類型,通常枚舉類型在使用中是是用DropDownList,每次轉換不是什么好辦法。 通過擴展加以實現此功能。
復制代碼 代碼如下:
public static class ExSelectListItem
{
public static List<SelectListItem> ToSelectListItem(this Enum valueEnum)
{
return (from int value in Enum.GetValues(valueEnum.GetType())
select new SelectListItem
{
Text = Enum.GetName(valueEnum.GetType(), value),
Value = value.ToString()
}).ToList();
}
public static List<SelectListItem> ToSelectListItem(this Enum valueEnum, string selectName)
{
return (from int value in Enum.GetValues(valueEnum.GetType())
select new SelectListItem
{
Text = Enum.GetName(valueEnum.GetType(), value),
Value = Enum.GetName(valueEnum.GetType(), value),
Selected = Enum.GetName(valueEnum.GetType(), value) == selectName ? true : false
}).ToList();
}
}
前臺使用:
@Html.DorpDownList((List<SelectListItem>)TempData["枚舉類型"])
看起來不錯。
后臺代碼應用:
TempData["枚舉類型"] = ((Enum) 枚舉類型.默認類型).ToSelectListItem();
擴展第二個方法中,我們傳遞枚舉類型名,來判斷是否選中狀態。
TempData["枚舉類型"] = ((Enum) 枚舉類型.默認類型).ToSelectListItem(“默認類型”);
新聞熱點
疑難解答
圖片精選