C#.NET如何不序列化字段、属性
-
当我们使用公开属性以及公开字段时,都可以顺利的被序列化,
01.[Serializable]02.publicclassMyClass03.{04.publicintID;05.06.publicstringAddress;07.08.privateint_age;09.10.publicstringName {get;set; }11.12.publicintAge13.{14.get{return_age; }15.set{ _age = value; }16.}17.}Xml序列化成档案后的结果就像下图:
JSON
bin,因为bin档案肉眼看不懂,所以用反序列化表示
但总是会有不想要存成档案的字段或属性
JSON及XML 若是不想被序列化 "属性" 及 "字段" 使用以下Attribute:
[System.Xml.Serialization.XmlIgnore] [System.Web.Script.Serialization.ScriptIgnore] BinaryFormatter 若是不想被序列化 "属性" 只要在相对应的 "字段" 使用以下:[NonSerialized] 看个例子:
01.[Serializable]02.publicclassMyClass03.{04.[NonSerialized]05.publicintID;06.07.publicstring Address;08.09.[NonSerialized]10.privateint_age;11.12.publicstring Name { get; set; }13.14.[System.Xml.Serialization.XmlIgnore]15.[System.Web.Script.Serialization.ScriptIgnore]16.publicintAge17.{18.get {return_age; }19.set { _age = value; }20.}21.}Xml序列化,忽略Age属性
JSON序列化,忽略Age属性
BinaryFormatter序列化忽略 Age属性 及 ID 字段
