标签:
本节要深入讨论一下格式化器如何序列化对象的字段。掌握了这些知识后,可以更容易地理解本章后面要解释的一些更高级的序列化和反序列化技术。
为了简化格式化器的操作,FCL在System.Runtime.Serialization命名空间提供了一个FormatterServices类型。该类型只包含静态方法,而且该类型不能实例化。以下步骤描述了格式化器如何自动序列化一个应用了SerializableAttribute的对象。
public static MemberInfo[] GetSerializableMembers(Type type, StreamingContext context);
这个方法利用反射获取类型的public和private字段实例。方法返回由MemberInfo对象构成的一个数组,其中每个元素都对应于一个可序列化的实例字段。
以下步骤描述了格式化器如何自动反序列化一个应用了SerializableAttribute的对象。
这个方法为一个对象分配内存,并不为对象调用构造函数。然后对象的所有字段都被初始化为成null或0.
标签:
原文地址:http://www.cnblogs.com/bingbinggui/p/4621409.html