Articles of json.net

Newtonsoft.JSON serializeobject devuelve una cadena JSON vacía

Todos respondieron mucho esta pregunta, y lo intenté casi todo, pero nada me funciona. Así que estoy desarrollando Xamarin.Forms y está a punto de enviar mis datos al servidor. Tengo esta clase public class Customer { public string FirstName { get; set; } public string LastName { get; set; } public string BirthDate { get; […]

¿Cómo (des) serializar una XmlException con Newtonsoft JSON?

Este código de ejemplo: var json = JsonConvert.SerializeObject(new XmlException(“bla”)); var exception = JsonConvert.DeserializeObject(json); lanza una excepción InvalidCastException en Newtonsoft.Json.dll: no se puede convertir el objeto de tipo ‘Newtonsoft.Json.Linq.JValue’ para escribir ‘System.String’ con el siguiente seguimiento de stack: at System.Xml.XmlException..ctor(SerializationInfo info, StreamingContext context) at Void .ctor(System.Runtime.Serialization.SerializationInfo, System.Runtime.Serialization.StreamingContext)(Object[] ) at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateISerializable(JsonReader reader, JsonISerializableContract contract, JsonProperty member, String […]

Linq query JObject

Estoy usando Json.net para serializar y luego hacer un objeto JO que se parece a esto: “RegistrationList”: [ { “CaseNumber”: “120654-1330”, “Priority”: 5, “PersonId”: 7, “Person”: { “FirstName”: “”, “LastName”: “”, }, “UserId”: 7, “User”: { “Id”: 7, “CreatedTime”: “2013-07-05T13:09:57.87”, “Comment”: “”, }, ¿Cómo puedo consultar esto en un nuevo objeto o lista, que se […]

Diseño de contenedor REST API: devolviendo json dynamic como JSON.NET JObject / JArray

Estoy escribiendo un envoltorio de C # para una API RESTful JSON, y estoy usando Json.NET para deserializar el json entrante a un objeto fuertemente tipado. pero algunas propiedades en el json entrante son altamente dinámicas, será un objeto json con diferente número y tipo de propiedades. Mi solución actual es, asigné la propiedad json […]

¿Puedo descomprimir y deserializar un archivo utilizando flujos?

Mi aplicación serializa un objeto utilizando Json.Net, comprime el JSON resultante y luego lo guarda en el archivo. Además, la aplicación puede cargar un objeto desde uno de estos archivos. Estos objetos pueden tener un tamaño de decenas de Mb y me preocupa el uso de la memoria, debido a la forma en que el […]

Deserialización con Json.NET: Requerir que una propiedad / clave esté presente

Cuando se utiliza Json.NET para deserializar una cadena JSON en un objeto, ¿cómo se requiere que una clave / propiedad esté presente en la agitación JSON, pero permita valores NULL? Por ejemplo: Digamos que tengo una clase / objeto … [DataContract] public class Car { [DataMember(IsRequired = true)] public string Vin {get; set;} [DataMember(IsRequired = […]

Recursivamente llamar a JsonSerializer en un JsonConverter

Estoy escribiendo un JsonConverter para realizar algunas tareas de conversión que necesito realizar en lectura / escritura. En particular, tomo el comportamiento de serialización existente y me ocupo de algunas propiedades adicionales en la escritura / lectura de esas propiedades adicionales en la lectura. Dentro del JsonConverter , me gustaría hacer uso de la instancia […]

¿Por qué no puedo deserializar esta estructura personalizada utilizando Json.Net?

Tengo una estructura que representa un DateTime que también tiene información de zona como se muestra a continuación: public struct DateTimeWithZone { private readonly DateTime _utcDateTime; private readonly TimeZoneInfo _timeZone; public DateTimeWithZone(DateTime dateTime, TimeZoneInfo timeZone, DateTimeKind kind = DateTimeKind.Utc) { dateTime = DateTime.SpecifyKind(dateTime, kind); _utcDateTime = dateTime.Kind != DateTimeKind.Utc ? TimeZoneInfo.ConvertTimeToUtc(dateTime, timeZone) : dateTime; _timeZone […]

Obtener la ruta del valor JSON utilizando JSON.NET

Estoy tratando de encontrar una ruta de un valor JSON. Considere el siguiente JSON: { “car”: { “type”: [{ “sedan”: { “make”: “honda”, “model”: “civics” } }, { “coupe”: { “make”: “ford”, “model”: “escort” } }] } } ¿Cómo puedo obtener la ruta del valor “honda”? Estoy buscando encontrar algo como esto … car_type_0_sedan_make_ honda […]

Deserializar json con cadenas de recorte automático

Yo uso la biblioteca Newtonsoft.Json ¿Hay una manera de recortar espacios de cualquier cadena de datos durante la deserialización? class Program { class Person { [JsonProperty(“name”)] public string Name; } static void Main(string[] args) { var p = JsonConvert.DeserializeObject(@”{ name: “” John “” }”); Console.WriteLine(“Name is: \”{0}\””, p.Name); } } Adicional: Finalmente, tengo solución con […]