在我希望以下划线“_”开头的项目位于列表底部的情况下,对字符串列表进行排序的正确方法是什么,否则一切都是按字母顺序排列的。
现在我正在做这样的事情,
autoList.OrderBy(a => a.StartsWith("_") ? "ZZZZZZ"+a : a )
最佳答案
如果您想要自定义排序,但不想提供比较器,您可以使用它 - sql 样式:
autoList
.OrderBy(a => a.StartsWith("_") ? 2 : 1 )
.ThenBy(a => a);
关于c# - 使用 LINQ 在 OrderBy 中自定义排序逻辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3007470/