明示的な DataContract 属性を使用する基本クラスから派生した JSON.NET を使用して POCO クラスをシリアル化/逆シリアル化すると、派生クラスの POCO プロパティが無視されることに気付きました。
たとえば、この例では、「Address」はシリアライズ/デシリアライズされていません。
[DataContract]
public class MyBaseClass
{
[DataMember(Name = "SomeName")]
public string Name { get; set; }
}
public class MyDerivedClass : MyBaseClass
{
public string Address { get; set; }
}
それは意図的なものですか?
FWIW、DataContractSerializer(少なくともXMLのもの)はここで「正しいこと」を行い、「アドレス」をシリアライズ/デシリアライズしているようです。
ありがとう!
ヘンリク