0

私はJsonシリアライゼーションとデシリアライゼーションの初心者です。

私は持っている

class TestClass
{

    public string Name{get;set;}
    public string Age{get;set;}
    public string Height{get;set;}

}

そして、次のシリアル化機能を持っています

public void SerializeData()
{

    string jsonData = "{
           {"Name" : "Zeus","Age" : "1825","Height" : "900"},
           {"Name" : "Hera","Age" : "1805","Height" : "200"}
     }";

    var resultList = new List<TestClass>();
    var ser = new JavaScriptSerializer();

    resultList= serializer.Deserialize(jsonData , TestClass)

}

しかし、うまくいきません!「引数例外」をスローし続けます

助けてください?

4

2 に答える 2

3

JSON が間違っている可能性があります。

AListは、次のように JSON 配列により近くマップされます。

 [
       {"Name" : "Zeus","Age" : "1825","Height" : "900"},
       {"Name" : "Hera","Age" : "1805","Height" : "200"}
 ]

外側の中括弧を使用する場合は、次のように JSON を使用して{}シリアル化できます。Dictionary<string, TestClass>

 {
       "Zeus" : {"Name" : "Zeus","Age" : "1825","Height" : "900"},
       "Hera" : {"Name" : "Hera","Age" : "1805","Height" : "200"}
 ]
于 2012-07-16T12:20:01.267 に答える
1

これは配列を表していません:

string jsonData = "{
           {"Name" : "Zeus","Age" : "1825","Height" : "900"},
           {"Name" : "Hera","Age" : "1805","Height" : "200"}
     }";

配列を作成するには、次のものが必要です。

string jsonData = "[
           {"Name" : "Zeus","Age" : "1825","Height" : "900"},
           {"Name" : "Hera","Age" : "1805","Height" : "200"}
     ]";
于 2012-07-16T12:22:02.083 に答える