2011-12-30 5 views
1

DNLA 서버에서 정보를 가져 오는 새로운 WP7 앱을 시작합니다. 서버는 REST 프로토콜을위한 JSON 언어를 지원한다. 나는 약간의 연구를했고 json.net이 아주 잘 추천되었다는 것을 발견했다. {"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"}]}JSON.net의 새로운 기능, 샘플 코드

임 C#을 새로운 대단히, 필자 공식 Json.NET의 documenation를 읽을 수 있지만 이동 나를 얻을 수있는 샘플 코드를 참조하는 것을 선호 :

나는 나를주기 http://192.168.1.1:234/rest/status?media=json 사용하여 데이터를 얻을 수 있습니다. "renderers"데이터를 수집하는 listbox와 서버의 현재 "serverStatus"에 대한 TextBlock을 만들었습니다.

사람이 도움이 될 수 있습니다 매우 많은 노력 선발을 위해

답변

5

, http://json2csharp.com/ 당신의 JSON에서 퍼팅과 마시고을 만들기위한 편리 감사하겠습니다합니다.

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; } 
} 

This 페이지 직렬화/dserialize 간단한 예를 갖는다.

RestSharp은 WP7을 지원하는 멋진 HTTP API 클라이언트입니다. 그것은 deserialzie 당신을 위해 또한 당신이 자신의 serializer/deserializer를 구현할 수 있습니다.