Come faccio a deserializzare tipi elementari da JSON in ASP.NET (System.Runtime.Serialization.Json)
-
19-09-2019 - |
Domanda
HI! Ho un piccolo problema. Quando sto usando DataContractJsonSerializer con tipi complessi (tipi proprie) funziona benissimo. Ma devo deserializzare TimeStamp o DateTime da stringa. Quindi non posso segnare questa tipi con DataContract, attributi DataMember.
ho scritto qualche codice
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
{
;
}
E io intercettare questa eccezione
{ "C'è stato un errore deserializzazione l'oggetto di tipo System.TimeSpan Incontrato carattere inaspettato 'P'.."} {System.Exception System.Runtime.Serialization.SerializationException}
E la mia domanda è Come posso deserializzare
Soluzione
Si può provare con Json.Net biblioteca - ha funzionato abbastanza bene per noi in passato.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow