Десериализация данных из Json в .Net объекты - PullRequest
0 голосов
/ 17 августа 2011

Я знаю, что есть много вопросов по этому поводу, но я просто не могу понять, как решить это правильно. Я получил от сервера JSON, который выглядит примерно так:

{
    "Applications":{
        "data":{
            "Aplication 1":[
                {
                    "index":1,
                    "name":"App1",
                    "groups":{
                        "Properties":[
                            {
                                "number":0,
                                "fields":{
                                    "primary":"primaryValue"
                                }
                            }
                        ]
                    }
                }
            ],
            "Aplication 2":[
                {
                    "index":2,
                    "name":"App2",
                    "groups":{
                        "Properties":[
                            {
                                "number":0,
                                "fields":{
                                    "searchEngine":"icon",
                                    "url":"google",
                                }
                            }
                        ]
                    }
                }
            ],
            "Aplication 3":[
                {
                    "index":3,
                    "name":"Foursquare",
                    "groups":{
                        "Properties":[
                            {
                                "number":0,
                                "fields":{
                                    "incoURL":"socialURL.jpg",
                                    "nameSoc":"rectangle",
                                    "url":"http://www.name.com"
                                }
                            }
                        ]
                    }
                }
            ]
        }
    }

}

Я пытаюсь использовать Json.NET для десериализации этого.

Я не уверен, как перевести этот формат JSON в класс в моем приложении для Windows Phone. Я даже не уверен, что это возможно, поскольку это можно увидеть в приведенном выше формате JSON: «Аппликация 1», «Аппликация 2» и «Аппликация 3» различны, а также имена полей для каждого приложения могут отличаться: - для "Aplication 1" это только один: "primary" - для "Application 2" есть 2: "searchEngine" и "url" - для "Application 3" - 3: "incoURL", "nameSoc" и "url"

1 Ответ

0 голосов
/ 17 августа 2011

Я бы порекомендовал использовать Json.net, потому что это поможет вам справиться с таким сложным json.

http://dorobantu.me/post/2010/08/22/Deserializing-JSON-to-anonymous-types-in-C.aspx

http://www.eugenedotnet.com/2010/12/windows-phone-7-serialization-json-net/

...