-1

辞書を持つオブジェクトを sencha (extjs) に送信する get メソッドを持つ Web apicontroller があります。データは sencha に問題なく読み込まれます。sencha からコントローラにデータを戻すと、オブジェクト (下の例では DTOUnivere) がオブジェクトのリストなしで満たされます (下の QualityIndi​​cators)。JSON からディクショナリへの変換は機能しませんか?

コントローラ:

[HttpPut]
public void PutUniverse(int id, DTOUniverse dtoUniverse)
{

}

投稿時の JSON 出力

"{
"Name": "Libelle",
"Description": "",
"Domains": "",
"TimeZone": "",
"Script": "",
"DecayPercentage": "0",
"DecayTime": "",
"QualityIndicators": {
    "Age": {
        "Enabled": true,
        "Operator": ">",
        "Value": 80
    },
    "LastActivity": {
        "Enabled": true,
        "Operator": "=",
        "Value": 20
    },
    "Hits": {
        "Enabled": true,
        "Operator": "<>",
        "Value": 15
    },
    "AverageVisitDuration": {
        "Enabled": true,
        "Operator": "<",
        "Value": 10.5
    }
}

}"

問題は、DTOUniverse.QualityIndi​​cators (実際の辞書) が null であることです。この JSON を辞書に変換するにはどうすればよいですか?

4

3 に答える 3

1

サイトjson2csharp.comでモデルを作成する

Json.net 経由でモデルを解析する

于 2013-04-26T13:19:26.763 に答える
0

fastjsonを使用すると、jsonを辞書にシリアライズする互換性があり、その逆も同様です

こちらがfastjsonを使用するための詳細な記事です

于 2013-04-26T13:10:58.613 に答える
-1

あなたのJSONQualityIndicatorsはリスト(配列)ではなく、単なるオブジェクトです[]。配列として解析したい場合は、オブジェクトを囲む必要があります

于 2013-04-26T13:30:39.987 に答える