私は次のような状況にあります。私のC#アプリケーションには、XmlSerializerを使用してシリアル化するクラスがあります。クラスはかなり複雑で、私のクラスのオブジェクトは、後で開くことができるアプリケーションファイルとしてローカルディスクに保存されます(従来の保存作業と再開作業)。私の問題は、開発中に、シリアル化されるオブジェクトのクラスが変更される可能性があることです。保存したxmlが古いバージョンに属しているが、それでも開くことができることをアプリが認識できるようにするバージョンシステムが必要です。古いアプリバージョンでは、新しいxmlバージョンも開くことができません。
例えば:
class ComplexObject
{
public string settings1;
public string settings2;
}
オブジェクトをシリアル化し、アプリを本番環境に送信します。明日私のクラスは
class ComplexObject
{
public string settings1;
public string settings2;
public string settings3;
}
私の新しいバージョンのアプリは、古いクラス定義のシリアル化されたオブジェクトと、オブジェクトへのファイルのロード(逆シリアル化)でエラーなしで新しいクラス定義をどのように開きますか?
任意の提案や基本的なサンプルを歓迎します!
ありがとう