Ich habe eine Reihe von C# -Klassen, und viele von ihnen verwenden die DefaultValueAttribute
, um UI-Hinweise für Bearbeitungszwecke aufzunehmen.Gibt es eine Möglichkeit, die Behandlung von DefaultValueAttributes zu deaktivieren?
Ich serialisieren Instanzen dieser Typen mit Json.NET
und senden sie an einen JavaScript
Client. Um die Bandbreite zu optimieren, möchte ich DefaultValueHandling.Ignore
Option verwenden, ABER in einer Weise, dass es DefaultValueAttribute
s nicht berücksichtigt. Mit anderen Worten, ich möchte nur die technischen Standardwerte false, 0, null
ignorieren, aber keine vom Entwickler definierten Standardwerte.
Der Grund dafür ist, dass der JavaScript
-Client keine Ahnung von speziellen, vom Entwickler definierten Standardwerten hat, sodass er nur die allgemeinen, oben genannten Standardwerte verarbeiten kann.
Gibt es eine Möglichkeit zum Ausschalten mit DefaultValueAttribute
s?
Entfernt das [tag: javascript] -Tag, die Frage ist rein über die C# -Seite der Dinge. –
Ich bin mir nicht sicher, ob ich verstehe, was das Problem ist. DefaultValueAttribute wurde entwickelt, um von UI-Designern verwendet zu werden - es legt keine Standardwerte für die zugrunde liegende Klasse fest. Es sollte nicht von JsonSerializer serialisiert werden - können Sie ein Snippet des Json-Streams hinzufügen, der erzeugt wird, Hervorhebung des Problems in den Daten bitte – PhillipH