Domanda

Ho un parametro di richiesta nel mio ASP.NET app. che è in formato JSON, e mi chiedevo se c'è una buona (semplice e veloce) modo per convertire una stringa JSON a una Jayrocks JsonObject, in modo da poter facilmente estrarre coppie chiave-valore, senza la necessità di analizzare manualmente la stringa?

È stato utile?

Soluzione

Supponendo json è la variabile che contiene il testo JSON, uso Jayrock.Json.Conversion.JsonConvert.Import(json). Che cosa si ottiene in cambio è o un JsonObject, JsonArray, JsonNumber, System.String, System.Boolean o un riferimento null a seconda del valore JSON radice nel testo di partenza JSON. Se si sa che sta per essere un oggetto JSON per certo, allora si può tranquillamente il cast del valore di ritorno o l'uso JsonConvert.Import<JsonObject>(json).

I scoraggerebbe lavorare contro JsonObject direttamente a meno che non particolarmente dipendete una delle sue caratteristiche. Si dovrebbe solo far finta l'oggetto JSON si torna è un dizionario; sia IDictionary o IDictionary<string, object>. Con l'ultima versione di .NET Framework 4, si può anche lavorare con un JsonObject come dinamica oggetto.

Altri suggerimenti

Non so Jayrock, ma se si desidera accettare un oggetto JSON come parametro di azione nel MVC2 che il modo più semplice per farlo è quello di utilizzare JsonValueProviderFactory dal Future di montaggio .

E 'parte di di System.Web.Mvc in MVC3.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top