Foo().OrderBy(x=> x.Name)
Run Code Online (Sandbox Code Playgroud)
如果我希望以这种方式对集合进行排序,但是正好一个具有Id ==(例如314)的元素应始终位于开头,而不管其名称如何.
jis*_*shi 21
您可以在两轮中对其进行排序:
Foo().OrderBy(x => x.Id == 314 ? 0 : 1).ThenBy(x => x.Name)
Run Code Online (Sandbox Code Playgroud)
也许这更简单(假设boolean false在布尔值为true之前运行)
Foo().OrderBy(x => x.Id != 314).ThenBy(x => x.Name)
Run Code Online (Sandbox Code Playgroud)