LINQ 문제가 있습니다. 나는 대안을 찾을 수있는 대안을 많이 볼 수 있지만 그 문제를 해결하려고 노력하고 싶다.이미 그룹화 된 데이터 구조에서 IGrouping을 만듭니다.
public enum AnimalType {
Cat,
Dog,
Rodent
}
var orderedAnimalTypes = new [] { AnimalType.Rodent, AnimalType.Cat };
나는 주어진 유형의 모든 동물을 돌려주는 함수 GetAnimals(AnimalType type)
을 가지고 있습니다. orderedAnimalTypes
을 가져다가 해당 유형의 모든 동물을 조회하여 그룹의 정렬 된 목록을 만들고 싶습니다.
IEnumerable<IGrouping<AnimalType, Animal>>
유형의 개체로 끝내고 싶습니다. Key
의 유형이 AnimalType
이고 그룹화의 열거 형이 Animal 인 그룹의 목록입니다.
그래서 내가하고 싶은 그룹의 IEnumerable
로 orderedAnimalTypes
목록을 투사 한 후 (이입니다.
foreach (var group in groups) {
AnimalType animalType = group.Key;
IEnumerable<Animal> animals = group.ToArray();
}
난 그냥 캔트 LINQ가 구축 어떤. 나는 내가해야 할 수 있습니다 생각하고이 작업을 수행하는 것 그것을 할 IGrouping의 내 자신의 구현을하지만 난 모르겠어요합니다.
에게 대안을
- 나는 매우 수 사전으로 원했던 것을 쉽게 할 수는 있지만 주문하지는 않을 것입니다. 그 그룹화의
IEnumerable
얻으려고 왜. - 익명 형식을 사용할 수도 있지만 결과를 MVC 모델에 할당하려면 강력하게 형식화해야합니다 .. 원하는 형식은
IEnumerable<IGrouping<AnimalType, Animal>>
이지만 그 형식을 가져 오는 방법을 알 수 없습니다. 난거야
지금 그것을 위해 당신의 말을해야한다는이 작동 ;-) 내가 9 개월 전 해주기 그룹에하려고했던 일을 기억하려고 노력! –