共用方式為


序列化處理的步驟

Serialize 方法在格式子上被呼叫時,物件序列化會遵照下列規則的順序來進行:

  • 進行檢查以判斷格式子是否有代理 (Surrogate) 選取器。如果格式子有的話,檢查代理選取器是否處理指定型別的物件。如果選取器處理物件型別,便會在代理選取器上呼叫 ISerializable.GetObjectData
  • 如果沒有代理選取器,或者代理選取器不處理物件型別,便會進行檢查來判斷物件是否為標記了 Serializable 屬性。如果物件沒有標記該屬性,便會擲回 SerializationException
  • 如果物件已適當標記,檢查物件是否實作 ISerializable 介面。如果是的話,便會在物件上呼叫 GetObjectData
  • 如果物件不實作 ISerializable,則會使用預設的序列化原則,並序列化所有未標記為 NonSerialized 的欄位。

請參閱

二進位序列化 | 使用 .NET 遠端處理存取其他應用程式定義域中的物件 | XML 序列化