Heim > Backend-Entwicklung > C++ > Wie verhindert man die Deserialisierung von DateTime beim Parsen von JSON mit Json.NET?

Wie verhindert man die Deserialisierung von DateTime beim Parsen von JSON mit Json.NET?

DDD
Freigeben: 2024-12-30 21:57:10
Original
134 Leute haben es durchsucht

How to Prevent DateTime Deserialization When Parsing JSON with Json.NET?

Json.NET Deaktivieren der DateTime-Deserialisierung

Beim Parsen von JSON in ein JObject mithilfe von JObject.Parse kann es vorkommen, dass Sie die rohe Zeichenfolgendarstellung beibehalten möchten einen Datumswert, anstatt ihn in ein DateTime-Objekt konvertieren zu lassen.

Um dies zu erreichen, bietet JObject.Parse keine direkte Unterstützung zum Festlegen von Deserialisierungsoptionen. Sie können jedoch eine Problemumgehung verwenden, indem Sie einen JsonReader mit den gewünschten Einstellungen erstellen.

using (JsonReader reader = new JsonTextReader(new StringReader(j1.ToString())))
{
    reader.DateParseHandling = DateParseHandling.None;
    JObject o = JObject.Load(reader);
}
Nach dem Login kopieren

In diesem Code wird ein JsonTextReader erstellt und seine DateParseHandling-Eigenschaft wird auf „None“ gesetzt, was angibt, dass keine Datumsanalyse erfolgen sollte geschehen. Dieser JsonReader wird dann als Eingabe für JObject.Load verwendet, das den JSON gemäß den bereitgestellten Einstellungen analysiert. Das resultierende JObject, o, enthält die Rohzeichenfolgendarstellung des Datumswerts.

Mit diesem Ansatz können Sie die automatische Datumsdeserialisierung deaktivieren und den Rohzeichenfolgenwert wie gewünscht erhalten.

Das obige ist der detaillierte Inhalt vonWie verhindert man die Deserialisierung von DateTime beim Parsen von JSON mit Json.NET?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage