4

こんにちは私は自分のAPIでJSONを生成していますが、これをWebアプリケーションのC#の背後にあるコードで使用しようとしていますが、うまく逆シリアル化できません。

私のJSONにはJSON配列を持つオブジェクトがあり、配列内の要素は動的であるため、JSONにはN個のアイテムを含めることができるため、これらのアイテムを使用して固定クラスを作成することはできません。

{
    "MAINOBJET": [{
        "ITEM1": "23800",
        "ITEM2": "Dahl; Police",
        "ITEM3": "test@test.net"
    },
    {
        "ITEM1": "23802",
        "ITEM2": "Steve ; Police",
        "ITEM3": "test2@test.net"
    }]
}

では、どうすればそれをDataTable、リスト、またはディクショナリに逆シリアル化できますか?ありがとうございました

4

1 に答える 1

5

ここでは、次のようなことを行うことができます。この例で開始できるはずです。構造/例をJasonテキストに置き換えます。

私のJSONスクリプトは次のようになっているとしましょう

{
    "some_number": 253.541, 
    "date_time": "2012-26-12T11:53:09Z", 
    "serial_number": "SN8675309"
    "more_data": {
        "field1": 1.0
        "field2": "hello JSON Deserializer" 
    }
}

JSON jsonTextを変数に割り当て、それを次のC#コードに渡します

using System.Web.Script.Serialization;

var jsonSerialization = new JavaScriptSerializer();
var dictObj = jsonSerialization.Deserialize<Dictionary<string,dynamic>>(jsonText);
Console.WriteLine(dictObj["some_number"]); //outputs 253.541
Console.WriteLine(dictObj["more_data"]["field2"]); //outputs hello JSON Deserializer
于 2012-12-26T17:56:47.953 に答える