二進位序列化
序列化可以定義為將物件狀態儲存至儲存媒體的處理序。在此處理序期間,物件的公用和私用欄位及類別的名稱 (包括包含該類別的組件) 都會先轉換成位元組資料流,然後再寫入資料流。若隨後將物件還原序列化,則會建立與原始物件完全相同的複製品。
在物件導向環境中實作序列化機制時,您需要在簡易使用與彈性之間進行權衡。只要您對處理序有足夠控制權,即可讓該處理序達到較大程度的自動化。例如,可能會出現某些情況:簡單的二進位序列化不足以滿足需求,或者由於特殊原因需要決定類別中的哪些欄位需要序列化。下列各節會檢視 .NET Framework 隨附的健全序列化機制,並強調一些可讓您自訂處理序以滿足需求的重要功能。
在本節中
- 序列化概念
討論序列化發揮作用的兩種情況:將資料保存至儲存體,以及在應用程式定義域間傳遞物件。
- 基本序列化
說明如何使用二進位及 SOAP 格式子來序列化物件。
- 選擇性序列化
說明如何避免將類別的某些成員序列化。
- 自訂序列化
說明如何使用 ISerializable 介面自訂類別的序列化。
- 版本相容序列化
說明如何建立可序列化型別,這些型別能夠在不同的時間進行修改,卻不會導致應用程式擲回例外狀況。
- 序列化方針
提供一些用於決定何時應將物件序列化的一般方針。
參考
- System.Runtime.Serialization
包含類別,可以用來序列化和還原序列化物件。
相關章節
- XML 和 SOAP 序列化
說明 Common Language Runtime 中包含的 XML 序列化機制。
- 安全性和序列化
說明在撰寫執行序列化的程式碼時,需遵循的安全程式碼撰寫方針。
- 遠端物件
說明 .NET Framework 中可用來進行遠端通訊的各種通訊方法。
- 使用 ASP.NET 和 XML Web Service 用戶端建立的 XML Web Service
提供主題,說明如何使用 ASP.NET 進行程式設計以建立 XML Web Service。