2016-07-01 9 views
0

私はオブジェクトのリストを持っています。私は2つの列からこのリストをグループ化し、この列の最後の値を取得します。2列でグループ化し、Cで最後の値を取得

私はまた、オブジェクトのコピー全体を持ちたいと思っています。

私はこのコードを書いている:

var FileDaInviare = info.FNAVB00R.ToList(); 
var FileDaInvNew = from c in FileDaInviare 
        group c by new 
        { 
         c.Progressivo_Gemap, 
         c.Committente_Gemap, 
        } into gcs 
        select new FNAVB00R() 
        { 

        }; 
        FileDaInvNew = FileDaInvNew.ToList(); 

しかし、このコードで私は(私は最後にしたい)することにより、グループの最初の値のみを持っており、オブジェクトが空です。私はオブジェクト全体のコピーを直接100列で構成して欲しい。すべて

+0

グループ化セットの最後の行を取得するには、 'gcs.Last()'を使用します。 –

+2

空のコンストラクタを使用し、 'FNAVB00R'を初期化しないので、実際には2つのカラムからは何もなく、正しいカウントだけがあります。 –

+0

"私はグループ化したい...私はオブジェクト全体が欲しい..." - 確かにこれらの要件は相互に排他的ですか? – onedaywhen

答えて

1

おかげであなたはLast拡張メソッドを使用することができます。

FileDaInvNew = FileDaInviare.GroupBy(g=> new {g.Progressivo_Gemap, g.Committente_Gemap}) 
      .Select(x=>x.Last()) 
      .ToList() 
+0

お試しくださいorderby desending –

関連する問題