Serialización y deserialización

Repasemos la serialización de la sección anterior: convierte un objeto entidad en una cadena JSON.

Serialización

WebInfo webInfo = new WebInfo();
webInfo.age = 4;
webInfo.webname = "FoxDevelop";
webInfo.website = "foxdevelop.com";
webInfo.students = new Person[] { new Person { name = "Tom" }, new Person { name = "Jim" } };
// Convertir el objeto webinfo a cadena JSON
StringWriter sw = new StringWriter();
JsonWriter writer = new JsonWriter(sw);
new JsonSerializer().Serialize(writer, webInfo);
string json = sw.GetStringBuilder().ToString();Lenguaje del código: JavaScript (javascript)
Resultado JSON generado
{"webname":"FoxDevelop","website":"foxdevelop.com","age":4,"students":[{"name":"Zhang San"},{"name":"Li Si"}]}Lenguaje del código: JSON / JSON con comentarios (json)

Deserialización

Convertir cadena JSON a objeto entidad

Modo 1 (escritura con Reader de bajo nivel)

WebInfo model = new JsonSerializer()
    .Deserialize(new JsonTextReader(new StringReader(json)), typeof(WebInfo)) as WebInfo;Lenguaje del código: JavaScript (javascript)

Modo 2 (sintaxis genérica compacta, Newtonsoft.Json)

WebInfo model = JavaScriptConvert.DeserializeObject<WebInfo>(json);Lenguaje del código: HTML, XML (xml)

new JsonSerializer().Deserialize(new JsonTextReader(new StringReader(jsonString)), typeof(NombreClase) as NombreClase

Mediante estos métodos podemos deserializar un JSON a un objeto entidad.

También se puede escribir así

JavaScriptConvert.DeserializeObject<NodeInfo>(jsonText)

Serialización y deserialización

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *