这使我疯狂,但它必须如此简单。订单列表<T> enum
我有一个类,强度值可以是高/中/低: -
public class SearchResults
{
private List<string> _categories;
public string caseID { get; private set; }
...
public string Strength { get; set; }
}
我做一个API调用,并得到一个List<SearchResults>
var resultres = JsonConvert.DeserializeObject<List<SearchResults>>(mycase.GetResults());
我”什么m试图做的是按照HIGH/MEDIUM/LOW的顺序排列结果,但如果我按照以下顺序排列,则按字母顺序排列:H/L/M
resultres.Sort((x, y) => x.matchStrength.CompareTo(y.matchStrength));
我(可能不正确地)试图用一个枚举: -
enum ResultStrength
{
HIGH,
MEDIUM,
LOW
}
,但我不能找到一种方法,用它来强制命令,如果我用那么下面它给了我一个“无法转换lambda表达式键入“System.Collections.Generic.IComparer”,因为它不是一个委托类型”
resultres.Sort((x, y) => x.ResultStrength.CompareTo(y.ResultStrength));
我已经尝试实施各种IComparer<SearchResults>
和Comparison<SearchResults>
,但我只是无法得到它来编译和/或正常工作。
怎么样orderBy? – OrcusZ