概念
序列化
通过使用不同的类(BinaryFormatter,SoapFormatter,XmlSerializer)将对象状态转换为可保持或传输的格式的过程,具体是将对象转变为字节流,其目的是为了保存数据的状态,方便后续还原调用。包括三种序列化形式:二进制序列化,SOAP序列化,XML序列化。于此过程相反,将序列化文件转换为对象的过程称为反序列化。
区别
- 二进制和SOAP格式可序列化所有可序列化字段,包括公共字段和私有字段。XML格式则可以序列化公共字段或拥有公共属性的私有字段。
- SoapFormatter 和 BinaryFormatter支持远程过程调用,可对图形进行序列化。
作用
1、在程序启动时读取上次序列化的信息,常用于存储和 socket 传输。
2、在不同的进程之间传递数据,比如可以在Web 间传递数据,跨域传递,ASP .NET 后台代码往前端传递数据。
二进制序列化
先借用一个demo:
using System.Collections;
using System.Runtime.Serialization.Formatters.Binary;
using System.Runtime.Serialization;namespace 序列化
{[Serializable]public class SerializeObject{public int ID{get;set;}