为什么字段不可序列化

时间:2013-07-11 13:09:38

标签: c# field serializable

为什么字段不能通过XML序列化程序在C#中序列化,而属性是?我知道属性实际上是方法,但我不明白为什么这应该有所作为。有谁知道答案吗?

非常感谢!

2 个答案:

答案 0 :(得分:7)

字段是可序列化的:

  

XML序列化序列化的公共字段和属性   一个对象,       或者方法的参数和返回值,进入符合的XML流       到特定的XML架构定义语言(XSD)文档。       XML序列化导致具有公共属性的强类型类       转换为XML的字段。       System.Xml.Serialization包含序列化所需的类       和反序列化XML。

来自MSDN

答案 1 :(得分:2)

字段是可序列化的。实际上,除非您使用NonSerialized属性标记它们,否则默认情况下会对所有字段进行序列化。

如果您谈论XML序列化,那么只会公共字段被序列化,因为XML序列化只序列化对象的公共接口。