Wenn Du im Record keine dynamische Felder hast, kannst Du einfach den Record Binär senden.
Das habe ich mir schon lange abgewöhnt. Es gibt dafür immer ein LoadFromStream oder SaveToStream. Damit ist man wesentlich flexibler. Im Stream am Anfang noch eine Versionsnummer, dann bist du sogar abwärtskompatibel, wenn du den Record erweiterst.