成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

淺析C# XmlSerializer概念及作用

開發 后端
C# XmlSerializer是什么呢?通過這里對于C# XmlSerializer的介紹,希望你掌握C# XmlSerializer概念以及C# XmlSerializer的使用原理等等情況

談到C# XmlSerializer類自然會聯系到序列化的問題,那么我們首先明白序列化其實就是是將對象轉換為容易傳輸的格式的過程。那么它是如何發揮作用的呢?讓我們來一一講述。

C# XmlSerializer類的理解

例如,可以序列化一個對象,然后使用 HTTP 通過Internet 在客戶端和服務器之間傳輸該對象。在另一端,反序列化將從該流重新構造對象。

XML序列化僅將對象的公共字段和屬性值序列化為 XML 流。XML 序列化不包括類型信息。例如,如果您有一個存在于 Library 命名空間中的 Book 對象,將不能保證它將會被反序列化為同一類型的對象。

注意:XML 序列化不轉換方法、索引器、私有字段或只讀屬性(只讀集合除外)。若要序列化對象的所有字段和屬性(公共的和私有的),請使用 BinaryFormatter,而不要使用 XML 序列化。

C# XmlSerializer類的使用:

XML序列化中最主要的類是XmlSerializer類,它的最重要的方法是 Serialize 和 Deserialize 方法。XmlSerializer 生成的 XML 流符合萬維網聯合會 (http://www.w3.org/) XML 架構定義語言 (XSD) 1.0 的建議。另外,生成的數據類型符合標題為“XML Schema Part 2: Datatypes”(XML 架構第二部分:數據類型)的文檔。

對象中的數據是用編程語言構造(如類、字段、屬性、基元類型、數組,甚至 XmlElement 或 XmlAttribute 對象形式的嵌入 XML)來描述的。您可以創建自己的用屬性批注的類,或者使用 XML 架構定義工具生成基于現有 XML 架構的類。

C# XmlSerializer類作用原理理解:

如果您有 XML 架構,就可運行 XML 架構定義工具生成一組強類型化為架構并用屬性批注的類。當序列化這樣的類的實例時,生成的 XML 符合 XML 架構。使用這樣的類,就可針對容易操作的對象模型進行編程,同時確保生成的 XML 符合 XML 架構。這是使用 .NET Framework 中的其他類(如 XmlReader 和 XmlWriter 類)分析和寫 XML 流的一種替換方法。(有關使用這些類的更多信息,請參見使用 .NET Framework 中的 XML。)這些類使您可以分析任何 XML 流。與此相反,當需要 XML 流符合已知的 XML 架構時,請使用 XmlSerializer。

屬性控制由 XmlSerializer 類生成的 XML 流,使您可以設置 XML 流的 XML 命名空間、元素名、屬性名等。有關這些屬性和它們如何控制 XML 序列化的更多信息,請參見使用屬性控制 XML 序列化。若想獲得一個列示對所生成的 XML 起控制作用的那些屬性的表,請參見控制 XML 序列化的屬性。

XmlSerializer 類可進一步序列化對象并生成編碼的 SOAP XML 流。生成的 XML 符合標題為“Simple Object Access Protocol (SOAP) 1.1”的萬維網聯合會文檔的第 5 節。有關此過程的更多信息,請參見用 XML 序列化生成 SOAP 消息。

XmlSerializer 類生成由 XML Web services 創建和傳遞給 XML Web services 的 SOAP 消息。若要控制 SOAP 消息,可將屬性應用于 XML Web services 文件 (.asmx) 中的類、返回值、參數和字段。您可以同時使用在“控制 XML 序列化的屬性”中列出的屬性和在“控制編碼的 SOAP 序列化的屬性”中列出的屬性,因為 XML Web services 可以使用文本樣式,也可以使用編碼的 SOAP 樣式。

C# XmlSerializer的相關內容就向你介紹到這里,希望對你了解和學習C# XmlSerializer有所幫助。

【編輯推薦】

  1. .NET不用控件實現文件夾監測系統
  2. 詳解C#中不同類的類型
  3. 淺談C#中標準Dispose模式的實現
  4. C#圖片處理的3種高級實用方法
  5. C# 4.0新特性:協變與逆變中的編程思想
責任編輯:仲衡 來源: CSDN博客
相關推薦

2009-09-01 16:10:28

C#單元測試

2009-08-20 18:47:19

C#異步通信

2009-08-18 09:51:18

C#枚舉類型

2009-08-24 17:39:21

C# 泛型集合

2009-08-24 15:28:19

C# 泛型方法

2009-09-09 16:53:49

C# XmlSeria序列化

2009-09-04 16:37:37

C# DES算法

2009-08-27 10:20:03

C# foreach語

2009-09-14 13:44:14

Lambda ExprC# Lambda

2009-08-25 18:16:02

.NET Framew.NET Framew

2009-09-02 10:58:02

C#動態數組

2009-08-20 19:08:30

C#異步調用

2009-08-27 17:11:44

C# Fluent I

2009-08-28 16:48:50

C#多態性

2009-08-12 10:37:13

C#運算符重載

2009-09-01 15:08:18

C#多態性

2009-08-26 14:16:17

C# FrameWor

2009-09-09 10:47:29

C# CheckBox

2009-09-11 11:16:53

C# Attribut

2010-09-03 11:24:49

CSS偽類
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 爱爱无遮挡 | 亚洲成人精品免费 | 亚洲精品视频在线观看免费 | 一区二区三区中文字幕 | 91亚洲一区 | 亚洲一区二区视频 | www.亚洲区 | 欧美日韩免费 | 亚洲精品免费在线 | 国产精品五区 | 色爱综合网 | 久久久久9999亚洲精品 | 国产情侣久久 | 毛片区 | 蜜桃在线一区二区三区 | 不用播放器看的av | 欧美aaa级 | 成人一区二区三区 | 九九久久久 | 国产精品视频导航 | 日韩资源 | 成人三级网址 | 自拍视频一区二区三区 | 国产精品久久久久久久久久免费看 | 麻豆毛片 | 欧美精品一区在线发布 | 午夜精品久久久久久久久久久久久 | 国产玖玖| 日韩精品专区在线影院重磅 | 日韩欧美一级精品久久 | av在线免费看网址 | 久久大陆 | 日韩精品视频在线观看一区二区三区 | 欧美男人天堂 | 国产精品国产a级 | 国产综合精品一区二区三区 | 99精品在线 | 欧美精品在线一区二区三区 | 亚洲精品一二三区 | 三级欧美| 日本精品视频在线 |