Heim > Backend-Entwicklung > C++ > Wie serialisieren Sie Enums als Zeichenfolgen mit JavaScriptSerializer und JSON.net?

Wie serialisieren Sie Enums als Zeichenfolgen mit JavaScriptSerializer und JSON.net?

Linda Hamilton
Freigeben: 2025-01-29 09:26:10
Original
120 Leute haben es durchsucht

How to Serialize Enums as Strings Using JavaScriptSerializer and Json.NET?

JavaScriptSerializer und json.net Enumeration serialisiert in String

Bei Verwendung der serialisierten Objekte von JavaScriptSerializer, die Aufzählungsattribute enthalten, ist das Standardverhalten ein Ganzzahlwert, der einen aufzähligen Wert anstelle seiner String -Darstellung ausgibt. In diesem Artikel werden die Methode zum Anpassen dieses Verhaltens und die Erlangung der Aufzählungszeichenfolge in der JSON -Ausgabe erörtert.

Lösung mit json.net

json.net bietet bequemere Lösungen über seine JsonConverter -Attribute und die erstellten -InnenumConverter -Typen. Durch Anwenden des Attributs auf die zugehörigen Aufzählungsattribute:

... Sie können die Aufzählung als Zeichenfolge angeben. Weitere Informationen zu Streifenkonverter finden Sie in den Dokumenten.

<code class="language-csharp">using Newtonsoft.Json;
using Newtonsoft.Json.Converters;

[JsonConverter(typeof(StringEnumConverter))]
public Gender Gender { get; set; }</code>
Nach dem Login kopieren
Andere Optionen

Es gibt andere Methoden, die diesen Konverter global konfigurieren können:

EPOLID -Definition:

Fügen Sie das Attribut selbst zum Auftrieb hinzu, um sicherzustellen, dass alle Aufzählungsinstanzen in die Zeichenfolge serialisieren.

    JsonSerializer:
  • Einschließlich Konverter in JsonSerializer:
  • Diese Methode wendet den Konverter auf die gesamte Aufzählung an, die im Serialisierungsprozess auftritt.
  • JsonConveter:
Eine andere Methode ist die Verwendung der JsonConvert -Klasse:
<code class="language-csharp">serializer.Converters.Add(new Newtonsoft.Json.Converters.StringEnumConverter());</code>
Nach dem Login kopieren

    weiter angepasst
  • StringenumConverter ermöglicht anderen Sitten, z. B. die Kontrolle des Kleinbuchstabens der Aufzählungszeichenfolge und der Annahme des Werts. Dies kann über Stingelnumconverter (Namingstrategy, Boolean) implementiert werden.

Das obige ist der detaillierte Inhalt vonWie serialisieren Sie Enums als Zeichenfolgen mit JavaScriptSerializer und 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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage