簡體   English   中英

C#LINQ:我們可以從GroupBy返回相同的實例,而不是重新進行嗎?

[英]C# LINQ: Can we return same instance from GroupBy instead of doing new?

我有一個集合,我需要分組並從該分組中查找最大值。 所以我做了

var foo = foobar.GroupBy(x => x.Name)
                .Select(x => new Foo { Name = x.Key, Version = x.Max(v => v.Version)))
                .ToList();

如果說兩個以上的屬性,是否可以返回相同的對象而不是創建新的對象?

當然, OrderByDescending在該組上使用OrderByDescending ,然后使用First來獲取max-version-object:

var maxVersionObjectByName = foobar
    .GroupBy(x => x.Name)
    .Select(grp => grp.OrderByDescending(x => x.Version).First())
    .ToList();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM