zoukankan      html  css  js  c++  java
  • MVC4 基础篇 枚举生成 DropDownList

       在MVC开发中我们常常用到枚举类型,通常枚举类型在使用中是是用DropDownList,每次转换不是什么好办法。 通过扩展加以实现此功能。

     1 public static class ExSelectListItem
     2     {
     3         public static List<SelectListItem> ToSelectListItem(this Enum valueEnum)
     4         {
     5             return (from int value in Enum.GetValues(valueEnum.GetType())
     6                     select new SelectListItem
     7                     {
     8                         Text = Enum.GetName(valueEnum.GetType(), value),
     9                         Value = value.ToString()
    10                     }).ToList();
    11         }
    12 
    13         public static List<SelectListItem> ToSelectListItem(this Enum valueEnum, string selectName)
    14         {
    15             return (from int value in Enum.GetValues(valueEnum.GetType())
    16                     select new SelectListItem
    17                     {
    18                         Text = Enum.GetName(valueEnum.GetType(), value),
    19                         Value = Enum.GetName(valueEnum.GetType(), value),
    20                         Selected = Enum.GetName(valueEnum.GetType(), value) == selectName ? true : false
    21                     }).ToList();
    22         }
    23 }


    我们通过扩展Enum方法来实现自动转换MVC中前台使用List<SelectListItem>的应用 

    前台使用:

    @Html.DorpDownList((List<SelectListItem>)TempData["枚举类型"])

    看起来不错。

    后台代码应用:

    TempData["枚举类型"] = ((Enum) 枚举类型.默认类型).ToSelectListItem();

     扩展第二个方法中,我们传递枚举类型名,来判断是否选中状态。

    TempData["枚举类型"] = ((Enum) 枚举类型.默认类型).ToSelectListItem(“默认类型”);

  • 相关阅读:
    redis
    JSP
    Cookie&Session
    Servlet
    HTTP
    TomCat
    CSS
    XML
    JDBC
    Mysql(对表的操作)
  • 原文地址:https://www.cnblogs.com/liuyunsheng/p/3030175.html
Copyright © 2011-2022 走看看