如何使用where语句将枚举转换为列表

时间:2014-03-04 14:58:04

标签: c# asp.net asp.net-mvc

我需要从枚举中获取不等于1的值并将其显示在下拉列表中。 我的意思是,我不想展示Done,而是它的价值。

public enum Statement
{
    Done= 1,
    Waiting= 2,
    Rejected= 3
}

1 个答案:

答案 0 :(得分:7)

您可以将Enum.GetValues与LINQ一起使用:

List<string> list = Enum.GetValues(typeof(Statement))
                        .Cast<Statement>()
                        .Where(r=> (int) r != 1)
                        .Select(t=> t.ToString())
                        .ToList();