Articles of json.net

Non in grado di serializzare il dizionario con la chiave complessa usando Json.net

Ho un dizionario con un tipo .net personalizzato come chiave. Sto provando a serializzare questo dizionario su JSON usando JSON.net, ma non è in grado di convertire le chiavi in ​​valore corretto durante la serializzazione. class ListBaseClass { public String testA; public String testB; } —– var details = new Dictionary(); details.Add(new ListBaseClass { testA […]

Deserializzazione di JSON in un object con Json.NET

Sto giocando un po ‘con la nuova API StackOverflow . Sfortunatamente, il mio JSON è un po ‘debole, quindi ho bisogno di aiuto. Sto cercando di deserializzare questo JSON di un utente: {“user”:{ “user_id”: 1, “user_type”: “moderator”, “creation_date”: 1217514151, “display_name”: “Jeff Atwood”, … “accept_rate”: 100 }} in un object che ho decorato con JsonProperty attributi […]

La serializzazione Xml di JSON.Net fraintende gli array

Ho alcuni xmls generati automaticamente in cui alcune parti di xml possono avere più righe e altre no. Il risultato è che se c’è una riga viene restituito un nodo json singolo e se ho più righe viene restituito un array con nodes json. Gli xml possono assomigliare a questo Testing 0 O con più […]

Converti un int in bool con Json.Net

Sto chiamando un webservice ei dati restituiti per un campo bool sono 0 o 1, tuttavia con il mio modello sto usando un System.Bool Con Json.Net è ansible lanciare lo 0/1 in un bool per il mio modello? Attualmente sto ricevendo un errore Newtonsoft.Json.JsonSerializationException: errore durante la conversione del valore “0” per digitare “System.Boolean” Qualsiasi […]

Come posso ottenere un elenco di chiavi da Json.NET?

Sto usando C # e Json.NET. Se ho un JObject, voglio un elenco delle chiavi all’interno dell’object, simile a come object.Keys() restituisce le chiavi all’interno dell’object. Sembra che sarebbe ovvio, ma mi sto trovando in difficoltà nel trovare un modo per farlo. Modifica: Sto attraversando l’object e voglio sputare tutte le chiavi nell’object mentre lo […]

Deserializzazione di un array JSON eterogeneo in Elenco covariante utilizzando JSON.NET

Ho una matrice JSON contenente oggetti di diverso tipo con proprietà differenti. Una delle proprietà è chiamata “tipo” e determina il tipo della voce dell’array. Ecco un esempio dei miei dati: [{ type : “comment”, text : “xxxx” }, { type : “code”, tokens : [{ type : “ref”, data : “m” }, { type […]

Converti Newtonsoft.Json.Linq.JArray in un elenco di tipo di object specifico

Ho la seguente variabile di tipo {Newtonsoft.Json.Linq.JArray} . properties[“Value”] {[ { “Name”: “Username”, “Selected”: true }, { “Name”: “Password”, “Selected”: true } ]} Quello che voglio realizzare è convertirlo in List dove SelectableEnumItem è il seguente tipo: public class SelectableEnumItem { public string Name { get; set; } public bool Selected { get; set; } […]

La deserializzazione delle proprietà autoreferenziali non funziona

Ho questo object con una proprietà Parent che fa riferimento a un altro object dello stesso tipo: [JsonObject(IsReference = true)] class Group { public string Name { get; set; } public Group(string name) { Name = name; Children = new List(); } public IList Children { get; set; } public Group Parent { get; set; […]

Uso della deserializzazione del corpo WCF personalizzata senza modificare la deserializzazione del modello URI

Da questo post del blog , sono stato in grado di creare un IDFMitchageMormageFormatter personalizzato che utilizza la serializzazione JSON.NET. Funziona alla grande con un avvertimento: utilizzarlo con UriTemplate non funziona necessariamente come previsto. Ecco l’implementazione fornita dal post del blog: class NewtonsoftJsonDispatchFormatter : IDispatchMessageFormatter { private readonly OperationDescription od; private readonly ServiceEndpoint ep; private […]

Json.NET (Newtonsoft.Json) – Due “proprietà” con lo stesso nome?

Sto codificando in C # per .NET Framework 3.5. Sto cercando di analizzare alcuni Json in un JObject. Il Json è il seguente: { “TBox”: { “Name”: “SmallBox”, “Length”: 1, “Width”: 1, “Height”: 2 }, “TBox”: { “Name”: “MedBox”, “Length”: 5, “Width”: 10, “Height”: 10 }, “TBox”: { “Name”: “LargeBox”, “Length”: 20, “Width”: 20, “Height”: […]