如何在Silverlight 4.0中解析/序列化以下JSON?

时间:2010-11-05 20:31:19

标签: silverlight json serialization silverlight-4.0

如何在Silverlight中解析/序列化以下JSON?

{
    "total": 1050769,
    "page": 1,
    "pagesize": 30,
    "questions": [
    {
        "tags": [
        "camera",
        "detection",
        "droid"
        ],
        "answer_count": 0,
        "favorite_count": 0,
        "creation_date": 1288984683,
        "last_activity_date": 1288984683,
        "up_vote_count": 0,
        "down_vote_count": 0,
        "view_count": 0,
        "title": "Using face detect in your program"
    },
    {
        "tags": [
        "unit-testing",
        "spring",
        "spring-mvc"
        ],
        "answer_count": 1,
        "favorite_count": 0,
        "creation_date": 1288983038,
        "last_edit_date": 1288984681,
        "last_activity_date": 1288984681,
        "up_vote_count": 1,
        "down_vote_count": 0,
        "view_count": 5,
        "title": "Unit test for Spring MVC Controllers that use annotation @RequestParam"
    }]
};

3 个答案:

答案 0 :(得分:2)

有很多选项,你说“解析/序列化”,如果选择一个选项会更好。你想简单解析仲裁JSON吗?在这种情况下,请使用JsonValue中的System.Json: -

 JsonValue root = JsonValue.Parse(jsonString);

如果您有一组与要反序列化的Json匹配的.NET类型,则需要使用DataContractJsonSeralizer命名空间中的System.Runtime.Serialization.Json

答案 1 :(得分:1)

尝试使用Json.NET - 请参阅Stack Overflow问题 Parsing JSON data with C#

答案 2 :(得分:0)

如果你没有一个强类型对象来传递它,你可以使用DynamicObject,只要Silverlight mscorlib可以访问它,我认为它会:

http://www.drowningintechnicaldebt.com/ShawnWeisfeld/archive/2010/08/22/using-c-4.0-and-dynamic-to-parse-json.aspx

[edit]这只是另一棵树咆哮......另一张海报与JSON.NET的链接可能更多是我在自己的代码中的方向...但我喜欢强类型的类。