Ich verwende ServiceStack.Ormlite, um Daten in einer SQLite
Datenbank persistent zu speichern, und ziemlich glücklich damit bisher.Wie kann ich die Serialisierung/Deserialisierung eines komplexen Typs in ServiceStack.OrmLite anpassen
Viele meiner Objekte haben jedoch Eigenschaften eines komplexen Typs, die ich nicht mit JSV
serialisiert werden möchte.
Ich muss in der Lage sein, eine benutzerdefinierte Serialisierung/Deserialisierung anzugeben, die zum Speichern der Eigenschaft in der Datenbank (als Zeichenfolge) verwendet werden soll. In der Welt db4o
würde dies der Verwendung der von IObjectConstructor
bereitgestellten Übersetzungsfunktion entsprechen.
Ein gutes Beispiel für komplexe Typen, die nicht serialisiert und deserialisiert werden können, sind NodaTime-Typen, obwohl sie sich leicht in Strings umwandeln lassen (ich habe bereits die Serialisierungs-/Deserialisierungsfunktionen, die ich mit db4o
verwendet habe).
Was ist der einfachste Weg, um das zu erreichen? Ein Wrapper wäre nicht sehr praktisch, da ich für jeden Typ, der eine Eigenschaft dieses komplexen Typs enthält, einen schreiben und pflegen müsste.
Bitte geben Sie eine ein minimales Arbeitsbeispiel einer Klasse, wie möchten Sie es realisieren und wie Sie es deserelisieren. – htellez
Es ist sehr einfach, ich habe eine Basisklasse mit einer komplexen Eigenschaft. Ich brauche diese Eigenschaft serialisiert/deserialisiert in/aus einer Zeichenfolge mit meiner eigenen Routine statt JSV. Ich glaube nicht, dass ein Code-Sample in diesem speziellen Fall wirklich benötigt wird. –