2017-06-20 6 views
0

私は 'dtTopAll'であり、イベントと待機列を持つdatatableを持っています。私が欲しいのは、合計です。イベントごとに列とグループを待ちます。私は合計を使用するとエラーを取得

以下のコードでは、 'Waits'列が表に属していないなどのエラーが発生します。

ultraGrid1.DataSource = dtTopAll; 
var dt1 = (from dr1 in dtTopAll.AsEnumerable() 
    group dr1 by dr1.Field<string>("Event") into g 
    select new 
    { 
     Event = g.Key, 
     Waits = g.Sum(z => z.Field<int>("Waits")) 
    }).ToDataTable(); 

ugWaitEvent.DataSource = dt1; 
+0

どのようにdtTopAllにデータを設定しますか?あなたが "Waits"という名前の列を持っていないかのように聞こえます。たぶん、別名を与えているか、列に名前を付けずに表に値を設定しているのでしょうか? –

+0

あなたのdatatableコードを投稿してください。投稿されたコードはOKです – Rahul

答えて

0

Linqクエリでは大文字と小文字が区別されます。あなたはこのようにしてみることができますか?

ultraGrid1.DataSource = dtTopAll; 
var dt1 = (from dr1 in dtTopAll.AsEnumerable() 
    group dr1 by dr1.Field<string>("Event") into g 
    select new 
    { 
     EVENT= g.Key, 
     WAITS= g.Sum(z => z.Field<int>("WAITS")) 
    }).ToDataTable(); 

ugWaitEvent.DataSource = dt1; 
関連する問題