Steuern Eigenschaftsnamen auf serialisiert ASP.Net Ajax Objekte
-
02-07-2019 - |
Frage
Um zu beginnen, ich weiß, gibt es zwei „Arten“ von JSON Serialisierung zur Zeit in ASP.Net gebaut. Sie entweder die JavaScriptSerializer-Klasse verwenden, können Sie Ihr Objekt in JSON oder die neuen DataContractJsonSerializer Klasse serialisiert ein Objekt JSON zu konvertieren
Wenn Sie die JavaScriptSerializer () Methode verwenden, müssen Sie Ihre Klasse als Serializable () markieren - wenn Sie die DataContractJsonSerializer Methode verwenden, müssen Sie Ihre Klasse als Datacontract () markieren, und markieren Sie Ihre Eigenschaften wie Datamembers () <. / p>
Wenn Sie möchten, können Sie ein Namensattribut für jede Datamembers angeben, so dass, wenn die Eigenschaft serialisiert wird / deserialisiert, verwendet er diesen Namen. Für meine Zwecke, sehe ich dies als nützlich ist, um die JSON nicht so „wordy“ zu machen. Zum Beispiel statt „UserID“, wie mein Eigentum unter Angabe (und nachdem er sich in meinem JSON-Objekt wiederholen), würde ich einfach gerne „u“ verwenden. Weniger Daten über den Draht, etc.
Die beiden Serialisierung Motoren machen ein bisschen anders, und man kann nur die JavaScriptSerializer mit ASP.Net Web / Script Methoden verwenden. Darin liegt mein Problem.
Gibt es eine gleichwertige Art und Weise einen Eigenschaftsnamen, um etwas anderes zu setzen, ausschließlich für die Zwecke der Serialisierung / Deserialisierung der regelmäßigen JavaScriptSerializer mit?
Lösung
Nein, es ist nicht.
Andere Tipps
Unter der Annahme, UTF-8 40 Bits über den Draht durch diese Technik sparen, es ist nicht wert, den Schlaf verloren.