按Enum属性排序

时间:2013-08-08 08:55:56

标签: .net sql entity-framework enums entity-framework-5

我正在使用一个名为EF5标志的Enum属性。其中一个标志是“粘性”标志。我有一个项目列表,我想按日期订购,但我希望所有的胶粘在顶部。有没有办法首先检索所有胶粘物,按日期排序,然后按日期排序所有其余的?

我的枚举声明是:

[Flags]
public enum ForumTopicFlags : int
{
    None = 0,
    Sticky = 1,
    Spam = 2,
    Deleted = 4,
    Locked = 8
}

1 个答案:

答案 0 :(得分:1)

非常简单,真的:

var result = myList
     .OrderByDescending(x => (x.Flags & ForumTopicFlags.Sticky) != 0)
     .ThenBy(x => x.Date);