JSON.net新手,示例代码

本文关键字:代码 net 新手 JSON | 更新日期: 2023-09-27 18:19:09

我正在启动一个新的WP7应用程序,它从DNLA服务器获取信息。服务器支持REST协议的JSON语言。我做了一些研究,发现json.net是非常好的推荐。

我可以通过使用http://192.168.1.1:234/rest/status?media=json获取数据给我:{"serverStatus":"STARTED","renderers":[{"uuid":"00a0965fa15c","ipAddress":"192.168.1.10","name":"KDL-52NX803","profileId":"9","status":"ACTIVE"},{"uuid":"1829220b083f","ipAddress":"192.168.1.13","name":"Windows Media Player","profileId":"1","status":"INACTIVE"},{"uuid":"5d70ac53cf8e","ipAddress":"192.168.1.14","name":"Unrecognized device","profileId":"1","status":"UNKNOWN"},{"uuid":"60465a95eec4","ipAddress":"192.168.1.22","name":"Playstation 3","profileId":"4","status":"UNKNOWN"},{"uuid":"001dd860bce4","ipAddress":"192.168.1.9","name":"Xbox 360","profileId":"3","status":"INACTIVE"}]}

我对c#非常陌生,我读过官方的Json。. NET文档,但更愿意看到样例代码,让我移动。我已经创建了listbox来收集"renderers"数据,并创建了TextBlock用于服务器的当前"serverStatus"。

如果有人能帮忙,我将非常感谢你的努力

JSON.net新手,示例代码

对于初学者来说,http://json2csharp.com/可以方便地放入json并创建poco。

public class Renderer
{
    public string uuid { get; set; }
    public string ipAddress { get; set; }
    public string name { get; set; }
    public string profileId { get; set; }
    public string status { get; set; }
}
public class RootObject
{
    public string serverStatus { get; set; }
    public Renderer[] renderers { get; set; }
}

本页有关于序列化/反序列化的简单示例。

RestSharp是一个很棒的HTTP API客户端,支持WP7。它将为您进行反序列化,也允许您实现自己的序列化/反序列化。