Serialization之SOAP序列化
前言
XML序列化还可用于对象序列化符合SOAP规范的XML流。SOAP是一种简单的基于XML的协议,它使应用程序通过HTTP来交换信息。专门为使用XML来传输过程调用而设计的。如同常规的XML序列化,特性可用于控制XML Web services生成的文本样式的SOAP消息。
内容
根据上篇的二进制序列化:Serialization之BinaryFormatter
这里就只说这两种的区别之处:
首先SOAP采用XML流进行数据序列化保证数据对象的数据以及数据的存储类型存储状态。XML可以达到Web服务上进行数据共享。
这里需要在上篇的基础上修改一下序列化的协议就ok了。
命名空间部分添加:
- <span style="font-family:KaiTi_GB2312;font-size:18px;">//在引用部分添加SOAP协议,并引用此命名空间
- using System.Runtime.Serialization.Formatters.Soap;</span>
声明一个XML文件:
- <span style="font-family:KaiTi_GB2312;font-size:18px;"> const string FileName = @"..\..\SavedLoan.xml";//声明一个XML文件</span>
窗体加载序列化格式:
- <span style="font-family:KaiTi_GB2312;font-size:18px;"> //以SOAP格式将对象或整个连接对象的图形序列化反序列化
- SoapFormatter deserializer = new SoapFormatter();</span>
窗体关闭事件里:
- <span style="font-family:KaiTi_GB2312;font-size:18px;"> //声明以SOAP格式序列化XML流
- SoapFormatter serializer = new SoapFormatter();</span>
效果图:
XML流文件:
小结
上面的这些序列化都是依据微软封装好的一些序列化格式,什么二进制、SOAP序列化、XML序列化和SOAP序列化一样都是依附了XML可以共享数据这一特性,但是好多大神都会自己自定义序列化,根据项目的需求,为了保证对象数据持久化,采用了自定义序列化,序列化自己想要的数据格式。ITOO里面将list可以序列化为json串。还有一些非关系的数据存储格式,让我们在序列化的同时,数据安全性提高了,数据共享性,数据对象持久化这些方便都得到了提升。本人菜鸟一枚,欢迎各路大神广提建议。
感谢您的宝贵时间······
Serialization之SOAP序列化的更多相关文章
- [.net 面向对象程序设计进阶] (13) 序列化(Serialization)(五) Json 序列化利器 Newtonsoft.Json 及 通用Json类
[.net 面向对象程序设计进阶] (13) 序列化(Serialization)(五) Json 序列化利器 Newtonsoft.Json 及 通用Json类 本节导读: 关于JSON序列化,不能 ...
- .NET 二进制序列化器,SOAP序列化器,XML序列化器
这里就不说JSON序列化了,只介绍三种:二进制序列化器,SOAP序列化器,XML序列化器 直接上代码: /// <summary> /// 二进制序列化器. /// 最节省流量,压缩程度最 ...
- IOSerialize,xml和json,soap序列化器,二进制序列化器,XML序列化器,文件 检查、新增、复制、移动、删除
1 文件夹/文件 检查.新增.复制.移动.删除,2 文件读写,记录文本日志/读取配置文件3 三种序列化器4 xml和json1.文件夹/文件 检查.新增.复制.移动.删除,2 文件读写,记录文本日志/ ...
- asp.net中对象的序列化,方便网络传输
对象序列化 是将对象状态转换为可保持或传输的格式的过程.反序列化 是将流转换为对象序列化和反序列化相结合 可以使对象数据轻松的存储和传递 在 .NET 中,如果是对象可序列化,需要在 声明对象的开始部 ...
- C# 序列化与反序列化Serialization之Json Xml Binary Soap JavaScript序列化
所谓的序列化其实就是把一个内存中的对象信息转化成一个可以持久化保存的形式,方便保存数据库和文件或着用于传输, 序列化的主要作用是不同平台之间进行通信与信息的传递保存等,常用的有序列化有Json Xml ...
- [.net 面向对象程序设计进阶] (9) 序列化(Serialization) (一) 二进制流序列化
[.net 面向对象程序设计进阶] (9) 序列化(Serialization) (一) 二进制流序列化 本节导读: 在.NET编程中,经常面向对象处理完以后要转换成另一种格式传输或存储,这种将对 ...
- 序列化与反序列化 - BinaryFormatter二进制(.dat)、SoapFormatter(.soap)、XmlSerializer(.xml)
序列化的作用是什么?为什么要序列化? 1.在进程下次启动时读取上次保存的对象的信息. 2.在不同的应用程序域或进程之间传递数据. 3.在分布式应用程序中的各应用程序之间传输对象. 所为序列化,就是将对 ...
- C# 序列化(Binary、Xml、Soap)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.I ...
- C# 序列化与反序列化之Binary与Soap无法对泛型List<T>进行序列化的解决方案
C# 序列化与反序列化之Binary与Soap无法对泛型List<T>进行序列化的解决方案 新建Console控制台项目项目,然后添加Team和Person 这2个类,如下: Team和P ...
随机推荐
- top命令 Linux查看CPU和内存使用情况,cpu监控之一
一.top命令 top命令是一个功能十分强大的监控系统的工具,对于系统管理员而言尤其重要.但是,它的缺点是会消耗很多系统资源. 在系统维护的过程中,随时可能有需要查看 CPU 使用率,并根据相应信息分 ...
- Git 之Windows环境下学习系列
Git .SVN .TFS 相同点 不同点 Git 版本控制 优点: 分布式版本控制.无需联网就能版本提交 开源 缺点 入门学习难度高 SVN 优点: 集中式版本控制. 个人开源 缺点 ...
- IC卡和RFID卡的区别(网上说的都不准确)
其实IC卡是卡类型的称呼,IC卡和RFID卡不应该在一起对比的,和IC卡在一起对比的应该是ID卡. RFID卡是其实是对卡技术类型称呼. IC为卡类型称呼(Integrated Circuit Car ...
- PowerDesigner中批量替换name和code的脚本
无论是cdm还是pdm都可以批量替换.处理.可在Tool-Execute commands-Edit/Run script中编辑运行脚本: 下面的脚本是批量将CDM中实体的用Code替换掉Name O ...
- Debian 7开启ssh、telnet
SSH 1. 安装ssh服务 apt-get install openssh-server 2. 开启ssh /etc/init.d/ssh start Telnet 1. 安装telnet apt ...
- Eclipse中classpath和deploy assembly的文件位置
classpath的配置信息存储在工程根目录下的.classpath文件 deploy assembly配置信息存储在工程目录下的.settings\org.eclipse.wst.common.co ...
- ansible for devops读书笔记第一章
yum -y install ansible ansible --version mkdir /etc/ansible touch /etc/ansible/hosts [example] www ...
- LAMP 3.0 mysql配置讲解
mysql 安装好后,我们是从安装包的 support-files 里面复制过来一个模板配置文件,默认 mysql 配置文件是在/etc/my.cnf 下,其实这个路径或者文件名字我们是可以修改的,在 ...
- DAY9-python并发之多线程理论
一 什么是线程 在传统操作系统中,每个进程有一个地址空间,而且默认就有一个控制线程 线程顾名思义,就是一条流水线工作的过程,一条流水线必须属于一个车间,一个车间的工作过程是一个进程 车间负责把资源整合 ...
- python dict.fromkeys()研究
def unique(seq): #return [x for x in my_list if x not in locals()['_[1]']] return {}.fromkeys(seq).k ...