摘要: 本节要深入讨论一下格式化器如何序列化对象的字段。掌握了这些知识后,可以更容易地理解本章后面要解释的一些更高级的序列化和反序列化技术。为了简化格式化器的操作,FCL在System.Runtime.Serialization命名空间提供了一个FormatterServices类型。该类型只包含静态方法,... 阅读全文
posted @ 2015-07-04 22:54 -祐扌戒恉- 阅读(213) 评论(0) 推荐(0) 编辑
摘要: 使用SerializableAttribute这个定制attribute应用于一个类型时,所有实例字段都会被序列化。然而,类型可能定义了一些不应序列化的实例字段。一般情况下,有两个原因促使我们不想对类型的部分实例字段进行序列化。字段含有反序列化变得无效的信息。例如,假定一个对象包含到一个Window... 阅读全文
posted @ 2015-07-04 20:36 -祐扌戒恉- 阅读(415) 评论(0) 推荐(0) 编辑
摘要: 设计一个类型时,设计人员必须郑重地决定是否允许类型的实例序列化。类型默认是不可序列化的。例如,以下代码可能不会像你希望的那样工作:internal struct Point { public Int32 x, y;}private static void OptInSerialization() ... 阅读全文
posted @ 2015-07-04 19:53 -祐扌戒恉- 阅读(366) 评论(0) 推荐(0) 编辑
摘要: static void Main(string[] args) { var objectGraph = new List { "Jeff", "Kristin", "Aidan", "Grant" }; Stream stream = S... 阅读全文
posted @ 2015-07-04 17:14 -祐扌戒恉- 阅读(268) 评论(0) 推荐(0) 编辑