簡體   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