0

2 つの関連プロパティを持つクエリ可能なオブジェクトのコレクションRetailerPrice. 各小売業者のオブジェクト (最低価格のもの) を選択し、小売業者の名前の最初の文字でグループ化されたオブジェクトのリストを表示したい (たとえば、文字「A」で始まる小売業者の最低価格に対応するすべてのオブジェクト)。最初のグループでは、「B」の次のグループなど。

Linqクエリを小売業者ごとにグループ化したら、クエリを属性Selectのリストに減らしてオブジェクトPriceへの参照を失うことなくオブジェクトに対してクエリを作成する方法を理解するのに苦労しています。

var query = from o in myCollection.Cast<MyObjectType>()
            group o.GetPrice(someParameter) by o.Retailer into oGroup
            select oGroup.Min() // <-- at this point I've 'lost' the objects 
                                //     and just have a list of prices
                                //     I also need to then group the results 
                                //     by o.Retailer.ToString()[0]

Windows Phone 7 を使用しているため、Linq が制限される場合があります。

4

1 に答える 1

1

では、小売業者と最低価格を含むキーと値のペアのリストだけが必要ですか? このように匿名型を選択することはできませんか?

var query = from o in myCollection.Cast<MyObjectType>()
            group o.GetPrice(someParameter) by o.Retailer into oGroup
            select new { Retailer = oGroup.Key, Min = oGroup.Min() };

または、カスタム クラスまたは KeyValuePair も作成できます。

于 2013-05-06T12:12:10.463 に答える