0

オブジェクトのリストを返さなければならないメソッドがありますが、その方法がわかりません! 私の問題は、groupdResult を IList に変換 (またはキャスト) することです。

internal IList<MyClass> MyMethod()
        {
            IList<MyClass> result=new List<MyClass>();

            IList<MyClass> rawData = this.GetRawDatas();

            foreach (MyClass item in rawDatas)
            {
                // do somthings
                MyClass balancedData = new MyClass();  
                if(some conditions)
                {
                  result.Add(balancedData);
                }
            }
            var groupdResult = result.GroupBy(x => x.MyField).ToList();
            return groupdResult;
        }
4

2 に答える 2

3

考えてみてください。結果は、グループのリストまたはグループ化されていないオブジェクトのリストになります。あなたが望むのは、実際にはソートされたリストだけだと思います:

return result.OrderBy(x => x.MyField).ToList();
于 2012-08-13T08:24:23.827 に答える
1

問題があるのは List/IList ではありません。GroupBy が MyClass を返さないのは事実です。

GroupBy は IGrouping を返すため、行は

var groupdResult = result.GroupBy(x => x.MyField).ToList();

List< IGrouping< MyClass > > を返します。

于 2012-08-13T08:22:26.800 に答える