次のようなデータセットがあります。
Name Type Quantity
A 1 2
A 2 3
B 1 3
3 つのフィールド (string Name、int Type、double Quantity) を持つクラス Items によって定義されます。
これは、Summary という List< Items > に格納されます。
私がする必要があるのは、特定の名前の QUANTITY の合計を取得することですが、このロジックははるかに大きな LINQ クエリ内にあるため、LET ステートメントを使用してそれを行う方法を見つけようとしています。
(Name = TargetName) の合計数量を探していることを知っているので、次のようなことをしようとしていました。
let items = Summary.Where(y => y.Name == TargetName).GroupBy.(z => z.Name)
これで、次のようにアイテムを使用して合計を取得できます。
TotalQuantity = items.Sum(x => x.Quantity)
しかし、これは機能しません。次のエラーが発生します。
エラー 2 'System.Linq.IGrouping' には 'Quantity' の定義が含まれておらず、拡張メソッド 'Quantity' もありません
これは、x を実行する場合にも当てはまります。intelisense には Quantity のオプションはありません (これがリストであるかのようにオプションを与えてくれます)。
何か案は?これは初心者の間違いだと思います(LINQは初めてです)。ありがとう、