本篇文章给大家介绍序列化是什么意思?让大家对序列化有一个初步的了解。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。

序列化是什么意思?

序列化(XML)是将对象实例的状态信息转换为二进制或文本形式以便持久存储到存储介质或通过网络传输的过程。简单来说,序列化是将具有子对象的对象实例转换为线性字节流的过程。

序列化由公共语言运行时(CLR)执行,以将对象的当前状态信息保存到临时(如ASP.NET缓存)或永久存储(文件,数据库等),以便以后用于更新对象相同的信息。它涉及将对象的公共成员和私有成员(包括类和程序集的名称)转换为字节流,然后将其写入数据流。将比特流转换为对象的逆过程称为反序列化。

.NET框架提供了两种序列化方法,即二进制序列化和XML序列化。

二进制序列化通过保留类型保真度来保留应用程序的不同调用之间的对象状态。

XML序列化使用XML作为开放标准,仅序列化公共属性和字段。它不保留类型保真度,但为人类可读的跨平台XML中的序列化提供支持。

.NET框架还提供了许多选项来自定义序列化过程以满足应用程序要求。

如何实现序列化?

当大量数据必须存储在平面文件中并在稍后的阶段检索时,使用序列化。要做到这一点,如果没有了序列化,它就变得过于乏味,容易出错和复杂的数据结构是复杂的。

反射是.NET框架提供的一种技术,用于自动将程序集的所有成员序列化为存储。

远程处理是一种使用二进制序列化的方法,将方法中的参数从一台计算机发送到另一台计算机。它的使用示例包括将会话状态保存在ASP.NET中、将对象复制到Windows窗体的剪贴板中,等等。

序列化(XML)主要用于跨网络共享数据,而不限制应用程序对数据的使用。

通过将可序列化的属性包含到类中,可以在任何.NET对象中实现序列化。

通过将OptionalField属性标记为新添加的类成员,可以毫无错误地让对象的早期版本进行反序列化。

NET框架中使用的序列化引擎确保每个对象只进行一次序列化,并自动处理对象图和循环引用。

总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助。

更多相关文章

  1. 芋道 Spring Boot 对象转换 MapStruct 入门
  2. 【第767期】你不懂JS:混合(淆)“类”的对象
  3. 【第766期】你不懂JS:对象
  4. 在 JavaScript 中对象的深拷贝(及其工作原理)[每日前端夜话0x8F]
  5. C#基础入门第十二天(面向对象多态,File操作流,泛型集合)
  6. 这可能是 Python 面向对象编程的最佳实践
  7. 浏览器中的JavaScript:文档对象模型与 DOM 操作[每日前端夜话0x5F
  8. Javascript的对象拷贝[每日前端夜话0x53]
  9. Python 为什么会有个奇怪的“...”对象?

随机推荐

  1. android SSL证书认证、SSL双向认证、http
  2. Android 获取设备唯一UUID
  3. Cordova插件编写流程(Android平台)
  4. android camera系统3A模式及其状态转换(二
  5. 【Android】如何寻找出某个Intent是否可
  6. Clickable URLs in Android TextViews
  7. android imageVIew拖动 && 图片缩放
  8. Android Manifest 用法
  9. Android HTTP请求
  10. ch027 Android Json