データベースにデータを次のように保存しています
ID DateID Country NoOfPeople
2 20130301 インドネシア 2
3 20130301 マレーシア 128
4 20130301 イギリス 2
6 20130302 オーストラリア 1
24 20130303 オーストラリア 2
25 20130303 ブータン 11
26 20130303 カナダ 1
27 20130303 フィジー 1
28 20130303 フィンランド 1
52 20130304 オーストラリア 2
53 20130304 ブータン 10
54 20130304 カナダ 1
55 20130304 フィジー 1
このデータを、DateID がキーで、値が国と noOfPeople のプロパティを持つ国オブジェクトのリストであるディクショナリに転置したいと考えています。
すなわちDictionary<int, List<Country>>
LINQ を使用してアプリケーションにデータを返し、結果を走査して、一意の日付 ID ごとに国と番号のリストを作成します。これは機能しますが、よりエレガントで効率的なソリューションを探しています。
私の最終的な目標は、JSON を次の形式で出力することです。
PeopleByCountry":{
"20130301":
[
{"country":"Indonesia"," noOfPeople ":2},
{"country":"Malaysia"," noOfPeople ":128},
{"country":"United Kingdom"," noOfPeople ":2}
],
"20130302":
[
{"country":"Indonesia","noOfPeople":1},
{"country":"Australia"," noOfPeople ":1}
]
}
私は NewtonSoft でやっています。
これが理にかなっていることを願っています。
前もって感謝します。