serialize serializar newtonsoft net example deserialize convert .net json serialization

serializar - ¿Hay alguna clase de ayuda de Serialización Json fuera de la plataforma en.NET BCL?



newtonsoft json serialize vb net (6)

Hay dos;

En la forma tradicional, no son 100% compatibles entre sí, especialmente re DateTime ; DCJS usa (IIRC) una cadena literal; JSS usa new , y ninguno de los dos puede leer correctamente.

Por supuesto, si el texto es opaco, también podría usar cualquier serializador binario conciso, y simplemente codificarlo en base-64; por ejemplo, protobuf-net es bastante escueto. Pero el uso de JSON minimiza el código externo necesario en cada extremo, por lo que puede ser la mejor opción.

Necesito serializar / deserializar algunos objetos en / desde cadena y transferirlos como datos opacos. Puedo usar XmlSerializer para hacerlo, pero la cadena generada parece torpe y larga. Entonces, ¿hay algún serializador conciso disponible en .NET?

Lo primero que me viene a la mente es que quizás .NET debería tener el serializador JSON, pero no puedo encontrarlo. ¿Hay algún enfoque estándar en .NET para convertir objetos a / desde cadenas concisas?


solo use su propia API ... es fácil de crear json ... pero también puede usar librerías JSON como JSON.NET.

feliz codificación


Json.Net es una biblioteca JSON para .NET. Está disponible en CodePlex.


JsonFx.NET tiene un serializador de código abierto que permite la serialización hacia / desde clases fuertemente tipadas que pueden ser lo que estás buscando. Puede controlar cómo se serializan las fechas y anular muchos aspectos de la serialización. Incluso interactúa bien con Linq al admitir la serialización de objetos anónimos. La API funciona igual que la serialización .NET XML.


Tengo un JsonSerializer de fuente abierta muy rápido disponible que puede serializar cualquier tipo de POCO o DataContract, incluidas las interfaces anónimas y los tipos encuadernados tarde, etc.

Ejemplo Básico

var customer = new Customer { Name="Joe Bloggs", Age=31 }; var json = JsonSerializer.SerializeToString(customer); var fromJson = JsonSerializer.DeserializeFromString<Customer>(json);