第二十一章 数据访问(In .net4.5) 之 序列化

1. 概述

  应用程序间传递数据,需要先将数据对象转化为字符流或字节流的形式,然后接收端收到后再转化回原始的数据对象。这就是序列化与反序列化。

  本章介绍 .net中的序列化与反序列化、序列化器的种类 以及 为序列化配置对象。

2. 主要内容

  2.1 序列化与反序列化

    序列化只能保存对象的数据部分,不能保存方法部分。可以创建custom data transfer object(DTO)来只保存指定的数据信息。

    .net平台提供三种类型的序列化:

    ① XmlSerializer:

[Serializable] 
public class Person 
{ 
    public string FirstName { getset; } 
    public string LastName { getset; } 
    public int Age { getset; } 
}
XmlSerializer serializer new XmlSerializer(typeof(Person)); 
string xml; 
using (StringWriter stringWriter = new StringWriter()) 
{ 
    Person p new Person 
    { 
        FirstName = “John”, 
        LastName = “Doe”, 
        Age 42 
    }; 
    serializer.Serialize(stringWriter, p); 
    xml = stringWriter.ToString(); 
} 
 
Console.WriteLine(xml); 
 
using (StringReader stringReader = new StringReader(xml)) 
{ 
    Person p = (Person)serializer.Deserialize(stringReader); 
    Console.WriteLine(“{0} {1is {2} years old”, p.FirstName, p.LastName, p.Age); 
} 

      可用的attribute:

      未完待续。。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。