- ふらっと C#,C♯,C#(初心者用) Part114©2ch.net
517 :デフォルトの名無しさん[]:2015/02/06(金) 22:23:36.97 ID:RfWtovQk - LINQで、下記コードの「money」をSumして、「ID」をGROUP BY し、
DataGridViewに表示させたいのですが、 「ID」のGROUP BYまでしか表示させられません。 どのように書けば実現できるのでしょうか? class IDSum { public string ID; public int money; } private void test() { var dtData = new List<IDSum>(); dtData.Add(new IDSum { ID = "1", money = 10}); dtData.Add(new IDSum { ID = "2", money = 20}); dtData.Add(new IDSum { ID = "1", money = 20}); this.dataGridView1.DataSource = dtData.GroupBy(a => a.ID).ToArray(); }
| - ふらっと C#,C♯,C#(初心者用) Part114©2ch.net
519 :デフォルトの名無しさん[]:2015/02/06(金) 22:35:48.56 ID:RfWtovQk - 舌っ足らずで申し訳ありません。
結果としては、 ID money 1 30 2 20 と表示させたいんです。 (IDのORDER BYは、今のところ考えていません。) SQLで書くと、 SELECT ID,SUM(money) FROM hoge GROUP BY ID となるでしょうか。 LINQは、GROUPBYだけで書くサンプル等は見かけるのですが、 SUMしてGROUPBYするようなものは見つからず。。。 書き方をご存知でしたら、よろしくお願いします。
| - ふらっと C#,C♯,C#(初心者用) Part114©2ch.net
522 :デフォルトの名無しさん[]:2015/02/06(金) 23:03:20.18 ID:RfWtovQk - >こんなかんじ?
LINQの書き方について、非常に参考になります。 ありがとうございます。 ただ、教えて頂いたコードを試しましたが、 表示はされませんでした。。。
| - ふらっと C#,C♯,C#(初心者用) Part114©2ch.net
525 :デフォルトの名無しさん[]:2015/02/06(金) 23:33:32.18 ID:RfWtovQk - >フィールドじゃなくてプロパティじゃないと駄目よ
アドバイスに従いプロパティにしたら表示されました。 ありがとうございます。 やはり、C#のコアの部分を理解してないとダメだなと 思い知りました。
|
|