LINQ顺序子句-强制某些字符串总是在顶部

本文关键字:字符串 顶部 子句 顺序 LINQ | 更新日期: 2023-09-27 18:18:26

我有以下LINQ order子句:

Menu[] sorted = ret.OrderBy(menu => menu.Title).ToArray();

这个工作得很好,因为菜单是按照标题的顺序排序的。

但是,如果标题恰好是"Favorites",我希望它始终是数组中的第一个元素。

最简单的方法是什么?谢谢!

LINQ顺序子句-强制某些字符串总是在顶部

我会说:

Menu[] sorted = ret.OrderBy(menu => menu.Title != "Favorites")
                   .ThenBy(menu => menu.Title)
                   .ToArray();