繁体   English   中英

XmlIgnore的XML序列化相关问题

[英]XML serialization related problem with XmlIgnore

序列化类时,如果注释了XmlIgnore属性,则会出现错误。 当我取消注释XmlIgnore属性时,它可以正常工作。 谁能告诉我为什么属性无法序列化?

通常,它将告诉您为什么在异常中非常清楚-特别是InnerException; 但是,总结一下:

对于要通过XmlSerializer (作为根对象或通过属性,即public SomeType MemberName {get;set;} )进行序列化的自定义类型SomeType public SomeType MemberName {get;set;}

  • 它必须是public
  • 它必须有一个公共的无参数构造函数
  • 某些通用组合可能不受支持
  • 它必须是预期的 (例如,将数据作为object公开是不行的事;例如,必须预先通告SomeType子类型,通常是通过[XmlInclude(...)]
  • 它必须是具体的(非abstract ),或通过[XmlInclude(...)]定义的具体实现

使用[XmlIgnore]无需考虑类型,因此可以避免使用不适合xml的类型。 对于这些情况,您也可以尝试IXmlSerializable

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM