LINQ를 사용하여 속성별로 중복 항목 계산
이 시나리오에는 ID 속성이 있는 개체 목록이 있습니다. 목표는 ID를 기준으로 개체 수를 세고 그룹화한 다음, 개수가 가장 많은 개체가 맨 위에 오도록 정렬된 방식으로 결과를 표시하는 것입니다.
ID별 그룹화
LINQ는 지정된 속성을 기반으로 개체를 그룹화하는 '그룹화 기준' 작업을 제공합니다. 귀하의 경우에는 ID 속성을 기준으로 그룹화하려고 합니다. 이를 달성하는 방법은 다음과 같습니다.
var grouped = items.GroupBy(item => item.ID);
그룹화 후에는 각 그룹이 동일한 ID를 가진 개체를 나타내는 그룹 컬렉션을 갖게 됩니다.
그룹
그룹이 생성되면 'Count()' 메서드를 사용하여 각 그룹의 개체 수를 계산할 수 있습니다. 그룹. 결과는 키-값 쌍의 모음입니다. 여기서 키는 ID이고 값은 개수입니다.
var counted = grouped.Select(group => new { ID = group.Key, Count = group.Count() });
개수별 정렬
마침내 , 결과를 개수별로 내림차순으로 정렬하려면 'OrderByDescending()'을 사용할 수 있습니다.
var sorted = counted.OrderByDescending(pair => pair.Count);
결과를 새 목록으로 결합
결과를 원하는 형식으로 표시하려면 다음을 포함하는 개체의 새 목록을 만들어야 합니다. ID, 카운트, 게임 이름입니다. 이를 달성하기 위해 속성과 프로젝션의 조합을 사용할 수 있습니다.
var results = sorted.Select(pair => new { ID = pair.ID, Count = pair.Count, GameName = items.First(item => item.ID == pair.ID).GameName });
이렇게 하면 필수 속성이 있는 개체 목록이 제공됩니다.
다음 단계에 따라 중복 항목을 계산할 수 있습니다. ID 속성을 기반으로 LINQ를 사용하여 개수별로 결과를 정렬합니다.
위 내용은 LINQ를 사용하여 ID 속성별로 중복 개체의 수를 계산하고 정렬하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!