Sie sollten nur einen Konverter benötigen. Das Beispiel zeigt im Grunde, wie Sie den JavaScript-Konverter für beliebige benutzerdefinierte Klasse verwenden. Es muss keine Klasse sein, die Teil des Frameworks ist.
Es funktioniert auch für alle Eigenschaften einer benutzerdefinierten Klasse, die selbst eine benutzerdefinierte Klasse sind.
JSON betrachtet Objekte als Sammlungen von Schlüssel/Wert-Paaren. Das Dokumentationsbeispiel zeigt also, wie Sie Eigenschaften Ihres Objekts übernehmen und in Dictionaries (eine Art Schlüssel/Wert-Paarobjekt) einfügen. Wenn Sie einen geschachtelten benutzerdefinierten Typ benötigen, können Sie einfach Key/Value-Paare innerhalb Ihrer Hauptpaarsammlung Key/Value verschachteln.
Auch, wenn Sie sehr spezifische Bedürfnisse haben (integrierte Serialisierung wird entweder nicht funktionieren, oder gibt nicht aus, was Sie wollen), sollten Sie nur die JavaScriptSerializer
Klasse verwenden.
JavaScriptSerializer serializer = new JavaScriptSerializer();
MyCustomObject obj = new MyCustomObject();
string json = serializer.Serialize(obj);
MyCustomObject object2 = serializer.Deserialize<MyCustomObject>(json);
Das sollte tun, was Sie in 95% der Fälle wollen.