私が取り組んでいるプロジェクトでは、シャットダウンする前にデータ構造をシリアル化する必要があり、再起動時にこのシリアル化されたデータから状態を復元します。
昨年、私たちは .NET 1.1 向けにビルドしていましたが、難しい問題に遭遇しました。
- 私たちのコードは .NET 2.0 で実行されました
- 1.1 をデフォルトとして何らかの方法で設定するソフトウェアでアップグレードした顧客
- 私たちのコードは .NET 1.1 で実行され、保存された状態を逆シリアル化できませんでした
この特定の問題は、その特定のソフトウェア アップグレードを禁止することで「解決」されました。.NET 2.0 フレームワークをターゲットにしているため (したがって、1.1 で実行できない可能性があります)、問題になることはありません。
このシリアライゼーションが 2.0 と新しいフレームワークの間で再び非互換に変更される可能性はどのくらいですか? コードを 2.0.50727 に修正した場合<supportedVersion>
、2.0.50727.1434 と 2.0.50727.nnnn (将来のリリース) の間でどのような変更が行われる可能性がありますか? シリアル化されるデータ構造は、標準クラス ライブラリの配列、マップ、文字列などです。
また、さらに .NET をアップグレードした後でも、2.0.50727 フレームワークが常にインストールされることが保証されていますか? Microsoft ドキュメントへのポインタを歓迎します。