public List <SelectListItem> EnumToSelectList <T>(bool order = true) { List <SelectListItem> result = new List <SelectListItem>(); EnumHelper eh = new EnumHelper(); List <T> enumValList = EnumExtension.EnumToList <T>().ToList(); Type enumType = typeof(T); Enum en; foreach (T single in enumValList) { en = (Enum)Enum.Parse(enumType, single.ToString()); result.Add(new SelectListItem { Text = eh.GetEnumDescription(en), Value = single.ToString() }); } if (order) { result = result.OrderBy(m => m.Text).ToList(); } return(result); }