TestChild
オブジェクトを含むTest
オブジェクトの配列をシリアル化しようとしています。サブクラスで満たされた基本クラスの配列をXMLにシリアル化するにはどうすればいいですか?
public class Test
{
public string SomeProperty { get; set; }
}
public class TestChild : Test
{
public string SomeOtherProperty { get; set; }
}
class Program
{
static void Main()
{
Test[] testArray = new[]
{
new TestChild { SomeProperty = "test1", SomeOtherProperty = "test2" },
new TestChild { SomeProperty = "test3", SomeOtherProperty = "test4" },
new TestChild { SomeProperty = "test5", SomeOtherProperty = "test6" },
};
XmlSerializer xs = new XmlSerializer(typeof(Test));
using (XmlWriter writer = XmlWriter.Create("test.xml"))
xs.Serialize(writer, testArray);
}
}
TestChildをTestに変換できないというInvalidOperationExceptionが表示されます。
これは意味がありますが、とにかくそれを行う方法はありますか?
ありがとうございました! (特にキャッシングのアドバイスのため) – neo2862