MVC4 Basic enumeration generation DropDownList practical tips

  • 2020-06-03 06:13:00
  • OfStack

In MVC development, enumeration types are often used, usually in DropDownList, and each conversion is not a good idea. This functionality is implemented through extensions.


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();
         }
 }

We extend the Enum method to automatically convert MVC to foreground List < SelectListItem > The application of

Front Desk use:

@Html.DorpDownList((List < SelectListItem > )TempData[" Enumerated Types "])

It looks good.

Background code application:

TempData[" Enumeration Type "] = ((Enum) enumeration type. Default type).ToSelectListItem ();

By extending the second method, we pass the enumerated type name to determine the selected status.

TempData [" enumeration "] = ((Enum) enumerated type. The default type). ToSelectListItem (type "default");


Related articles: