意味的に辞書であるリソースを取得するためにREST APIのDTOを設計する最良の方法は何ですか?C#REST dictionary DTO
例:年齢別従業員数を取得する - >型(int、int)の組み合わせ(年齢、数)を返す必要があります。
簡単な方法は次のように、構造体の配列でなければなりません:
[
{
age: 30,
number: 3
},
{
age: 31,
number: 4
},
{
age: 32,
number: 5
}
]
が、これはキーが一意であることを強制しません。
{
"30": 3,
"31": 4,
"32": 5
}
デシリアライズ/簡単にシリアル化できるように、C#で、このようなDTOを定義する方法があります: 意味的に、私はむしろのように、辞書を好むだろうか?
必要がありません:その後
を、あなたはこのヘルパーメソッドを使用して、文字列にあなたの鍵を変換する必要がありますキーを文字列に変換する:http://stackoverflow.com/a/42982286/1288109 –
@Starnutoditopoサンプルに文字列キーがありますが、それはint-int dictioniaryでもかまいませんが、jsonでは文字列キーとint値があります –
これはJson構文です。引用符で囲まれていない数字キーは使用できません。数字キーは引用符で囲まなければなりません! jsonの仕様を見てください!とにかく、Json.Netも引用符でシリアル化しています:http://stackoverflow.com/a/42982286/1288109で提案されている例を試してみてください –