0
我有以下对象更新对象的泛型列表:排序和基于子对象
public class TestResult
{
public string SectionName { get; set; }
public int Score { get; set; }
public int MaxSectionScore { get; set; }
public bool IsPartialScore { get; set; }
public string Name { get; set; }
public int NumberOfAttempts { get; set; }
}
public class TestResultGroup
{
public TestResultGroup()
{
Results = new List<TestResult>();
Sections = new List<string>();
}
public List<TestResult> Results { get; set; }
public List<string> Sections { get; set; }
public string Name { get; set; }
public int Rank { get; set; }
}
所以,一个TestResultGroup可以有任意数量类型的TestResult结果。这些测试结果仅因其SectionName而异。
我有一个List<TestResultGroup>
,我需要整理成基于Results
财产得分降序排列,但只有当Results
有一个项目卫生组织SectionName
=“MeanScore”(如果它没有这个部分,我们可以假设一个分数的-1)。我将如何去订购清单?理想情况下,我还想将此订购的结果应用于Rank
财产。
非常感谢
有没有办法做到这一点,而无需使用6?它不是我的电话升级项目 – Mick
我从我的解决方案中删除空传播算子,所以它不需要C#6.0 –
非常感谢,你的排序工作像一个魅力,排名可悲的不是。我可能还不够清楚,如果2个结果具有相同的平均分,那么他们应该具有相同的排名 – Mick