¿Cómo puedo deserializar tipos elementales de JSON en ASP.NET (System.Runtime.Serialization.Json)

StackOverflow https://stackoverflow.com/questions/1721033

  •  19-09-2019
  •  | 
  •  

Pregunta

HI! Tengo un pequeño problema. Cuando estoy usando DataContractJsonSerializer con tipos complejos (propios tipos) que trabaja muy bien. Pero tengo que deserializar marca de hora o DateTime de cadena. Así que no puedo marcar este tipo con DataContract, atributos DataMember.

he escrito algo de código


string jsonedTS="PT2M15S";

DataContractJsonSerializer jsonSerializer = new DataContractJsonSerializer(typeof(TimeSpan));
MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(jsonedTS));
            try
            {
                result.Takes = (TimeSpan)jsonSerializer.ReadObject(ms);
            }
            catch
            {
                ;
            }

Y detectar esta excepción

{ "Hubo un error deserializar el objeto de tipo System.TimeSpan. Se encontró carácter inesperado 'P'."} System.Exception {System.Runtime.Serialization.SerializationException}

Y mi pregunta es ¿Cómo puedo deserializar

¿Fue útil?

Solución

Usted puede tratar con Json.Net biblioteca - que ha funcionado bastante bien para nosotros en el pasado.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top