2
Iは、以下のクラス(すべて同じ名前空間、Test.NamespaceTestに定義される)を有する:SGEN:名前空間の参照からトップXML要素の異なるタイプ
[XmlRootAttribute("rootTag")]
public class BaseClass
{
}
[XmlRootAttribute("rootTag")]
public class MyClass : BaseClass
{
}
と同様
[XmlRootAttribute("rootTag")]
public class Class1
{
}
[XmlRootAttribute("rootTag")]
public class Class2
{
}
SGENをこれらのクラスのシリアライゼーションアセンブリを作成しようとすると、次のエラーが発生します(BaseClassとMyClassの場合と同じ)。
The top XML element 'rootTag' from namespace " references distinct types Test.NamespaceTest.Class1 and Test.NamespaceTest.Class2. Use XML attributes to specify another XML name or namespace for the element or types.
これらのクラスは同じルート名を使用する必要がありますので、XmlRootAttributeを定義しました。 sgenを動作させるためには何をする必要がありますか?これらのクラスはシリアライズされ、既存のサービスにSOAPリクエストとして送信されるため、名前空間の値を追加すると、元々名前空間が定義されていないため、リクエストを逆シリアル化しようとしたときにサービスが壊れることはありませんか?
どのように追加しましたか? –