Deserializar una cadena JSON en una clase

Hola a tod@s,

En el dia de hoy, hoy voy a traer un pequeño codigo para deserializar una cadena con formato JSON en una clase, como vereis es muy sencillo.

Lo primero de todo, tenemos instalar un paquete llamado Newtonsoft, sino sabes como hacerlo puedes verlo aqui, tras instalar el paquete NuGet hay que importar los espacios de nombre:

Necesitaremos disponer de una clase con la estructura correcta, hay que tener en cuenta que los nombres de las variables deben de coincidir con las de la cadena JSON, ya que sino no hara nada.

Por otro lado, generamos una clase en la que pondremos el nombre que esta dentro del JSON, que nos indica que es un conjunto de Personas, lo mismo que antes debe de tener el nombre exacto para que parchee las propiedades.

La cadena de JSON que nos llega es la siguiente, estaria almacenada en una variable llamada por ejemplo jsonRetorno.

Como veis, la estructura es la misma que la clase, pero podria tener algun campo que en la clase no este, y lo que hara es omitirlo. La linea de codigo necesaria para poder deserializar es la siguiente:

Dentro del objeto oPersona, tendremos dos clases que coinciden con las del JSON.

Espero que os valga, tambien podeis ver como serializar una clase en una cadena Json, en este post.

Saludos,

¿Qué es una API y para qué sirve?

Las siglas API corresponden al inglés application programming interface, que se traduce como interfaz de programación de aplicaciones. Esta fórmula se refiere al conjunto de estructuras que permiten que los componentes de un software se comuniquen con otros.

Las APIs de una aplicación permiten el acceso a los desarrolladores de otros programas a ciertas partes de su biblioteca para llevar a cabo determinadas acciones. Es decir, es la capacidad que tiene un software para comunicarse entre diferentes plataformas o aplicaciones.

Esta parte de la programación no está pensada tanto para el usuario final, sino para consumirla entre diferentes canales.

Por ejemplo, cuando realizamos una compra en Internet y metemos los datos de nuestra tarjeta, la aplicación o página web del vendedor utiliza APIs para comprobar que la información introducida es correcta, informándonos del resultado.

Por lo tanto, es una pieza esencial del proceso de desarrollo de cualquier aplicación. Sin embargo, queda totalmente trasparente para el usuario final.

Ejemplo

Hay muchas APIs, que se pueden consumir públicamente de forma gratuita, por ejemplo, con esta proporcionada por la pagina el-tiempo.net, se puede sacar información del tiempo, provincias, localidades, etc..

Si escribimos esta dirección, https://www.el-tiempo.net/api/json/v2/provincias, veréis que nos devuelve un fichero en texto plano, con una estructura JSON, sabiendo esta estructura, podremos utilizarla en cualquier otra aplicación que necesitemos, sin tener que preocuparnos de la información en si.

En este caso concreto, el ejemplo es muy básico, ya que no hace falta una validación previa, pero puede ser, que en otras APIs nos requiera usuario y contraseña, token, etc…

Espero que te haya valido para tener una idea general, intentaremos realizar algún ejemplo de alguna API en un futuro.