私はからクラスを生成しており、クラスを設定して xml にシリアル化するXSD
必要があります。
生成されたクラスに入るすべての情報を含むさまざまなクラスがあります。
問題は、生成されたクラスにはバージョンがあり、それらのクラスのプロパティは同じバージョンの他のクラスであることです。
class LocalData
{
public MyClass property { get; set; }
}
class XmlVersion1
{
public MyClassV1 property { get; set; }
}
class XmlVersion2
{
public MyClassV2 property { get; set; }
public MyClassXV2 newProperty { get; set; }
}
MyClassV1
とのデータV2
は基本的に同じなので、同じコードを使用できます。
LocalData
クラスとバージョン管理されたクラスのいずれかを取得し、バージョン管理されたクラスにデータを入力するファクトリを作成したかったのですが、作成する必要があるバージョンをファクトリが認識していないproperty = new MyClassVx
ため、実行したいときに問題が発生しました。 .
私はそれをできた
if (parameter is MyClassV1)
paramter.MyClassV1 = new MyClassV1
などですが、それは大量のコードです。
これは、外部企業によって指定された xml メッセージを生成するためのもので、さまざまなバージョンがあり、コンテンツを内部システムにシリアライズおよびデシリアライズできる必要があります。