我有List<string>
以下条目:
“夏天”、“春天”、“冬天”
我想写一个 .OrderBy() 来根据这个对它们进行排序:
public enum Term {
Spring = 0, Summer, Fall, Winter, All
}
因此,我想看到的结果是:
“春天”、“夏天”、“冬天”
编辑 - 为澄清起见,并非每个客户都有所有可用的条款,但我只希望列表排序的一致性。
var q = l.OrderBy (x => Enum.Parse(typeof(Term), x));
List<string> terms = new List<string> { "Summer", "Spring", "Winter" };
var enumNames = Enum.GetNames(typeof(Term))
.OrderBy(s=>Enum.Parse(typeof(Term),s))
.ToList();
var orderedList = terms.OrderBy(s => enumNames.IndexOf(s)).ToList();