subcollection 속성을 기반으로 컬렉션을 정렬하고 싶습니다. 단지 테스트 목적 아래 subcollection 속성을 기반으로 컬렉션을 정렬하는 방법
//the subcollection
public class Salary
{
public int SalaryId {get;set;}
public int SalaryYear {get;set;}
public double SalaryValue {get;set;} //this is the field we want to sort the parent collection "Person"
}
//the main collection
public class Person
{
public int PersonId {get;set;}
public string PersonName {get;set;}
public List<Salary> Salaries {get;set;}
}
, 나는 급여 내부 컬렉션과 사람의 내 컬렉션을 준비하고있어 각 하나
List<Person> people = new List<Person>();
//add two salaries for Junior
people.Add(new Person { PersonId = 1, PersonName = "Junior" });
people[0].Salaries.Add(new Salary { SalaryId=1, SalaryYear=2011, SalaryValue=80000 });
people[0].Salaries.Add(new Salary { SalaryId=2, SalaryYear=2010, SalaryValue=70000 });
//add two salaries for Johanna
people.Add(new Person { PersonId = 2, PersonName = "Johanna" });
people[0].Salaries.Add(new Salary { SalaryId=3, SalaryYear=2011, SalaryValue=40000 });
people[0].Salaries.Add(new Salary { SalaryId=4, SalaryYear=2010, SalaryValue=30000 });
이제 우리는 사람들 모음을 정렬 할 만 내면 수집 SalaryValue를 사용하여 매개 변수로.
어떻게 목록을 정렬 할 수 있지만 급여 내부 컬렉션의 LINQ/Lambda 식을 사용할 수 있습니까?
그래서 나는 것이다 : 나에게PersonName: Johanna, SalaryValue=30000, SalaryYear=2010
PersonName: Johanna, SalaryValue=40000, SalaryYear=2011
PersonName: Junior, SalaryValue=70000, SalaryYear=2010
PersonName: Junior, SalaryValue=80000, SalaryYear=2011
코드는 사람의 외부 콜렉션의 독립 (명 [I]) –