如何通过密钥从.NET IGrouping返回值?

Pur*_*ome 5 .net c# linq igrouping

我正在努力弄清楚如何检索实例的Value一部分IGrouping.

我有以下内容:

IList<IGrouping<string, PurchaseHistory> results = someList.GroupBy(x => x.UserName);
Run Code Online (Sandbox Code Playgroud)

现在,我希望遍历每个集合并检索该用户的购买历史记录(并检查购买历史记录中是否存在某些内容).

有人可以帮忙吗?

fub*_*ubo 6

嵌套循环怎么样?

IList<IGrouping<string, PurchaseHistory>> results = someList.GroupBy(x => x.UserName);

foreach (IGrouping<string, PurchaseHistory> group in results)
{
    foreach (PurchaseHistory item in group)
    {
        CheckforStuff(item);
    }
}
Run Code Online (Sandbox Code Playgroud)

或者一个带有linq语句的循环

IList<IGrouping<string, PurchaseHistory>> results = someList.GroupBy(x => x.UserName);
foreach (IGrouping<string, PurchaseHistory> group in results)
{
    bool result = group.Any(item => item.PurchasedOn > someDate);
}
Run Code Online (Sandbox Code Playgroud)