3

Protobuf-netを使用しています。シリアル化されたGizmoオブジェクトのリストがあり、各GizmoオブジェクトがGazooオブジェクトを参照しているとします。Gazooオブジェクトは、複数のGizmoオブジェクトによって参照される同じオブジェクトである可能性があります。

この状況で逆シリアル化はどのように機能しますか?

ギズモオブジェクトで同じ参照先のGazoosのコピーを複数取得できますか?

私が期待するのは、シリアル化されたデータのすべての重複に対してGazooの1つのコピーです。

4

1 に答える 1

6

グーグルによって定義されたワイヤーフォーマットは、グラフシリアライザーではなくツリーシリアライザーであるため、オブジェクト参照は保持されません。ただし、「v2」が出荷されると、オブジェクト参照/グラフのサポートをモデルにハッキングするという悪意のある計画があります。基本的には、(そのモードで)追加の​​オブジェクトIDデータを含めることによってです。ただし、これにより、相互運用シナリオでの使用がやや難しくなります。したがって、理想的には、protobuf-net<===>protobuf-netにのみ適しています。

しかし、今日は何もありません。複数のコピーを取得するか、循環参照を取得すると爆発するはずです。


アップデートとして:これはprotobuf-net v2で利用可能になりましたが、コード仕様外の実装固有の機能として利用できます。

于 2010-06-17T22:31:25.870 に答える