이전 게시물 (http://bit.ly/bbIthV)에서 Address가 null 일 때 중첩 된 Address.State에 의해 Person 목록을 그룹화하는 방법을 물었습니다.중첩 된 속성의 중첩 된 속성 (파트 II)으로 그룹화하는 방법
//Create a dummy replacement for when a person has no addresses Address dummyAddress = new Address { State = "" }; people.GroupBy(p => (p.Addresses.GetFirstOrDefault() ?? dummyAddress).State);
그러나 결과를보고, 나는 오른쪽 으론 요청되지 않았 음을 참조하십시오
내 질문에 완벽한 대답을했다.나는 각각 6 명씩 n 개의 주소로 살고 있는데, 위의 경우 6 명만받는 반면 ... 나는 핵심 인물로 그룹을 구성해야한다.
var distinctAddresses = people.SelectMany(p=>p.Addresses).City).Distint();
나는 대답은 어떤 종류의 GroupJoin을 포함 할 것이다 생각하지만, 나는
//Back where I started: var y = addresses.GroupJoin(persons,a => a.State, p => p.Addresses.FirstOrDefault(), (a,p)=> p); //Doesn't compile... var y = addresses.GroupJoin(persons,a => a, p => p.Addresses, (a,p)=> p);
은 아무도 진행 방법에 대한 제안이 있습니까 ... 아주 멀리 못 했어?
대단히 감사합니다!
약간 혼란 스럽습니다. 샘플 입력과 출력을 제공 할 수 있다면 좋을 것입니다. – Ani