[英]How to Serialize in json new properties after hide it in derived class
我必须上课,如:
public class Title
{
public List<Detail> details {get; set;}
}
public class Detail
{
// some properties
}
public class TitleChild : Title
{
public new List<DetailChild> details {get; set;} // hiding
}
public class DetailChild : Detail
{
// some properties
}
我需要序列化Title List<Title>
列表和TitleChild List<TitleChild>
在List<Title>
一切正常,但在List<TitleClild>
有些事情是错误的。 在javascript中反序列化之后,我注意到details属性steel是超类中的隐藏属性。
我该怎么办 ?
而且我也不能忽略对隐藏属性的超类序列化,因为在超类的序列化时间中需要它。
序列化很可能只是遍历公共属性。 您已经使用new
关键字故意隐藏了详细信息。 您可以尝试更改结构,以免使用new
。 在这里看起来确实很奇怪,无论如何都最好避免这样做。
例如,如果您希望同时返回两个属性,则可以将details
的名称更改为childrenDetails
并删除new
。
PS由于您的DetailChild
继承自Detail
,因此您实际上可以只使用原始的details
列表并用DetailChild
对象填充它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.