나는 같은 데이터 구조를 가지고있다
public DespatchGroup(DateTime despatchDate, List<Products> products);
그리고 나는 노력하고 있습니다 …
var list = new List<DespatchGroup>();
foreach (var group in dc.GetDespatchedProducts().GroupBy(i => i.DespatchDate))
{
// group.Values is not correct... how do I write this?
list.Add(new DespatchGroup(group.Key, group.Values);
}
IGrouping
그룹 내 데이터 레코드에 실제로 도달하는 방법을 볼 수 없으므로 분명히 이해 하고 있지 않습니다!
답변
그룹은 다음을 구현 IEnumerable<T>
합니다. 일반적 으로을 호출 foreach
하십시오 group
. 이 경우 에는 다음이 필요합니다 List<T>
.
list.Add(new DespatchGroup(group.Key, group.ToList());
답변
더 없습니다 Values
때문에 재산 또는 유사한 IGrouping<T>
자체 입니다IEnumerable<T>
값의 순서가. 이 경우에 필요한 것은 해당 순서를 목록으로 변환하는 것입니다.
list.Add(new DespatchGroup(group.Key, group.ToList());
답변
선택한 그룹에 대해 전화를 걸 수 있습니다
var selectedGroupValues=selectedGroup.SelectMany(x=>x);
답변
다른 답변에서 알 수 있듯이 사용할 수있는 특정 색인에 액세스 해야하는 경우 그룹화는 IEnumerable group.ElementAt(i)
입니다.
이것은 아마도 많은 사람들에게 명백 할 것이지만 희망적으로는 몇 사람을 도울 것입니다!
답변
