使用Windows Phone 7解析包含数组的JSON对象

Enr*_*man 3 c# json windows-phone-7

好的,我有一些困难.

我的JSON就像

{ "names" : [ {"name":"bla"} , {"name":"bla2"} ] }
Run Code Online (Sandbox Code Playgroud)

我试图做这个教程但是,由于JSON不同,它没有用.

我需要在这个方法中加入什么?我不知道创建一个包含我的列表或直接使用JsonObject的"wrap"类是否更好.你能给我一个片段吗?我是C#的新手.

void webClient_OpenReadCompleted(object sender, OpenReadCompletedEventArgs e)
    {
        DataContractJsonSerializer ser = null;
        try
        {
           ???
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message);
        }
    }
Run Code Online (Sandbox Code Playgroud)

提前致谢!

L.B*_*L.B 6

使用Json.Net(支持Windows Phone)

string json = @"{ ""names"" : [ {""name"":""bla""} , {""name"":""bla2""} ] }";

var dict = (JObject)JsonConvert.DeserializeObject(json);
foreach (var obj in dict["names"])
{
    Console.WriteLine(obj["name"]);
}
Run Code Online (Sandbox Code Playgroud)

或者,如果您想以类型安全的方式使用它

var dict = JsonConvert.DeserializeObject<RootClass>(json);
foreach (var obj in dict.names)
{
    Console.WriteLine(obj.name);
}


public class RootClass
{
    public MyName[] names { get; set; }
}

public class MyName
{
    public string name { get; set; }
}
Run Code Online (Sandbox Code Playgroud)