我正在DropDownList
从一个填充 MVC 4 中的一个enum
,并且我想将枚举值从最大到最小排序。但是,似乎没有直接的方法来解决这个问题。目前,我正在使用此代码添加到字典,其中键是 ID,值是显示文本:
var priorities = Enum.GetValues(typeof(Models.Priority)).OfType<Models.Priority>().ToList();
for (int i = priorities.Count - 1; i >= 0; i--)
{
Models.Priority priority = priorities[i];
prioritiesDictionary.Add((int)priority, "Priority " + ((int)priority).ToString());
}
我不相信将枚举值放入列表并向后循环是最有效的方法。枚举中只有四个值,但是有没有更好的方法来OrderBy
对从返回的内容执行操作Enum.GetValues
?我知道以我的方式这样做可能对性能的影响最小,但我想知道更大的枚举。