C#でシリアル化されたオブジェクトを格納および維持するためのベストプラクティスは何ですか?適用できる戦略やパターンはありますか?
私がこれまで信じてきたのはこれです:
- スペースと速度の両方の点でXMLよりもJsonを優先しますが、大きなデータセットの場合、XMLはLINQ to XMLを介してデータをクエリ/マイニングする方が簡単です。
- すべてのプロパティについて、シリアル化された名前に明示的にマップします。将来、プロパティの名前を変更する必要がある場合、シリアル化されたデータは壊れません。属性はこれに役立ちます。
- 将来データを大量に移行する必要がある場合に備えて、シリアル化されたオブジェクトにある種のバージョン情報を保存します
更新:(難しい方法を見つけた)
- アプリケーション全体およびすべてのバージョンで、すべての日時を統一された方法で保存します。フォーマットとタイムゾーンの両方について。