1

私は Windows Mobile で C# アプリケーションを開発していますが、ほとんどの WM アプリケーションと同様に、シリアライゼーション戦略を決定するときはいつも行き詰まります。デスクトップの世界では、かなり堅牢なカスタム xml シリアライザーを既に開発しているので、あまり心配していませんが、WM の世界では、リフレクションのパフォーマンスが低下するため、使用したくありません。

そのため、データ アクセス オブジェクト (DAO) インターフェイスに対してすべてを開発するので、xml、レジストリ、sqlce などにシリアル化するためのさまざまな実装を簡単に交換できます。 Dictionary<>) を使用し、データを永続化したい場合は XmlSerializer DAO を使用し、すべてが完了したら本格的な sqlce DAO に移動します。

ただし、私の最新のアプリでは、XmlSerializer DAO を使用できません。これは、インターフェイスであるプロパティを処理する (処理しない) 方法が悪いためです。IE、私は List< IBar > Bars プロパティを含む Foo オブジェクトを持っていますが、XmlSerializer はそれをシリアル化できません (ただし、独自のカスタム xml シリアライザーを簡単に開発できましたが、図に行くことができました)。

WM 用のアプリケーションを開発するのに役立つ DAO 戦略は何ですか? アプリの成熟度レベルが異なる複数の DAO を事前に計画していますか? 本格的な sqlce DAO から始めますか? XmlSerializer を使用できない場合、すばやく簡単に永続的なシリアル化 DAO をお勧めしますか?

4

1 に答える 1

1

まあ、それは必ずしもあなたのケースに当てはまるわけではありませんが (XmlSerializer具体的な型が必要なので)、protobuf-netは、CF 2.0 や CF 3.5 を含むすべての .NET バリアントで動作するバイナリ シリアル化エンジンです。これにより、データを保存し、フルファット 3.5 サーバー (または、実際には Java、Perl、phpなど) と交換することができます。

それは確かに迅速かつ簡単なので、WM でポータブル データが必要な場合は、一見の価値があります。

于 2008-12-27T15:59:04.437 に答える