2013-10-06 2 views
0

내 목록을 정렬해야 최대 개체 X 속성과 유일한 개체 항목 만 가질 수 있습니다. 예를 들어 :별개 및 개체 속성 별 정렬 목록 대상 값

new List: 

object[0] :name:dani;x:3 

object[1] :name:joei;x:5 

어떻게 : 난 그렇게 추천 객체와 새로운 목록을 얻을 것이다, 그래서 나는 가장 큰 X 값과 별개의 객체를 찾을 필요가

MyList : 

object[0] : 
name: dani 
x:3; 

object[1] : 
name:dani; 
x:1; 

object[2]: 
name:joey; 
x:5; 

object[3]: 
name:joey; 
x:1; 

: 나는 개체의 목록을 가지고 새 목록을 찾았나요? 람다 ex는 좋을 것입니다 ...

답변

1
myObjects.GroupBy(o => o.name).Select(g => g.OrderByDescending(o => o.x).First()) 

사용중인 Linq 공급자에 대한 세부 정보를 제공하지 않기 때문에 가장 일반적인 방법입니다. http://code.google.com/p/morelinq/

myObjects.GroupBy(o => o.name).Select(g => g.MaxBy(o => o.x)) 
0

사용이 코드 :

mylist.GroupBy(o => o.name).Select(g => g.OrderByDescending(o => o.x).First()) 
당신은 morelinq에 MaxBy 확장 방법을 사용하여 Linq2Objects 물건 속도를 높일 수 있습니다