Come visualizzare i dati Json in Windows Phone 7

Sono principiante con Windows Phone e non ho idea di come riempire la casella Elenco dalla stringa JSON. Nella mia applicazione, ci sarà una stringa JSON che proviene dal servizio web.

quindi, ecco la mia json String [json Array]:

{ "type":"ok", "result": { "Country":[{ "title":"Country-1", "description":"US", "status":"1" }, { "title":"Country-2", "description":"Australia", "status":"0" }, { "title":"Country-3", "description":"Brazil, "status":"0" } ] } } 

E voglio legarlo nella casella di riepilogo nella mia applicazione. Non ho davvero idea, come bind in una lista.

per favore dammi l’intero codice di xaml ec # per quello.

Per prima cosa, hai bisogno di una buona libreria che ti aiuti a convertire la tua stringa json nella tua rappresentazione del modello c # (DeSerialization).

Puoi scrivere il tuo, usare il deserializer della piattaforma integrato o semplicemente usare NewtonSoft.json

Per installare NewtonSoft per WP, utilizzare Nuget. Si noti che è necessario utilizzare la versione 5.0.8 poiché la serie 6.x non supporta Windows Phone 7.

Gestore pacchetti Nuget

Ho semplificato un po ‘la stringa json, non capisco perché una proprietà del paese possa contenere un elenco di paesi?

c #, nel tuo codice dietro

 public partial class MainPage : PhoneApplicationPage { // Constructor public MainPage() { InitializeComponent(); //BindCountries(); } protected override void OnNavigatedTo(NavigationEventArgs e) { BindCountries(); } private void BindCountries() { var json = "{\"type\":\"ok\",\"countries\":[{\"title\":\"Country-1\",\"description\":\"US\",\"status\":\"1\"},{\"title\":\"Country-2\",\"description\":\"Australia\",\"status\":\"0\"},{\"title\":\"Country-3\",\"description\":\"Brazil\",\"status\":\"0\"}]}"; var countryResult = JsonConvert.DeserializeObject(json); if (countryResult.Type.Equals("ok", StringComparison.InvariantCultureIgnoreCase)) { lstCountries.ItemsSource = countryResult.Countries; } } } public class CountryResult { public string Type { get; set; } public IEnumerable Countries { get; set; } } public class Country { public string Title { get; set; } public string Description { get; set; } public int Status { get; set; } } 

xaml:

                           

Risultato:

Risultato