BinaryFormatter.Deserialize 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
將資料流還原序列化至物件圖形。
多載
Deserialize(Stream) |
已淘汰.
將指定的資料流還原序列化至物件圖形。 |
Deserialize(Stream, HeaderHandler) |
將指定的資料流還原序列化至物件圖形。 所提供的 HeaderHandler 會處理該資料流中的任何標頭。 |
備註
重要
使用不信任的資料呼叫此方法,會造成安全性上的風險。 呼叫此方法時,請一律使用信任的資料。 如需詳細資訊,請參閱 驗證所有輸入。
Deserialize(Stream)
警告
BinaryFormatter serialization is obsolete and should not be used. See https://aka.ms/binaryformatter for more information.
將指定的資料流還原序列化至物件圖形。
public:
virtual System::Object ^ Deserialize(System::IO::Stream ^ serializationStream);
[System.Obsolete("BinaryFormatter serialization is obsolete and should not be used. See https://aka.ms/binaryformatter for more information.", DiagnosticId="SYSLIB0011", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public object Deserialize (System.IO.Stream serializationStream);
public object Deserialize (System.IO.Stream serializationStream);
[<System.Obsolete("BinaryFormatter serialization is obsolete and should not be used. See https://aka.ms/binaryformatter for more information.", DiagnosticId="SYSLIB0011", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
abstract member Deserialize : System.IO.Stream -> obj
override this.Deserialize : System.IO.Stream -> obj
abstract member Deserialize : System.IO.Stream -> obj
override this.Deserialize : System.IO.Stream -> obj
Public Function Deserialize (serializationStream As Stream) As Object
參數
- serializationStream
- Stream
要還原序列化物件圖形的來源資料流。
傳回
物件圖形的最上層 (根)。
實作
- 屬性
例外狀況
serializationStream
為 null
。
serializationStream
支援搜尋,但是其長度為 0。
-或-
輸入資料流不代表格式正確的 BinaryFormatter 序列化承載。
-或-
從輸入資料流將物件還原序列化時發生錯誤。
InnerException
屬性可能包含更多關於根本原因的資訊。
呼叫端沒有必要的權限。
ASP.NET Core 5 和更新版本:除非BinaryFormatter在項目檔中重新啟用功能,否則一律擲回 。 如需詳細資訊,請參閱解決 BinaryFormatter 過時與停用錯誤。
備註
警告
BinaryFormatter
不安全且無法確保安全。 如需詳細資訊,請參閱 BinaryFormatter 安全性指南。
若要成功還原串行化,數據流中的目前位置必須位於物件圖形的開頭。
重要
使用不信任的資料呼叫此方法,會造成安全性上的風險。 呼叫此方法時,請一律使用信任的資料。 如需詳細資訊,請參閱 驗證所有輸入。
適用於
Deserialize(Stream, HeaderHandler)
將指定的資料流還原序列化至物件圖形。 所提供的 HeaderHandler 會處理該資料流中的任何標頭。
public:
virtual System::Object ^ Deserialize(System::IO::Stream ^ serializationStream, System::Runtime::Remoting::Messaging::HeaderHandler ^ handler);
public object Deserialize (System.IO.Stream serializationStream, System.Runtime.Remoting.Messaging.HeaderHandler handler);
abstract member Deserialize : System.IO.Stream * System.Runtime.Remoting.Messaging.HeaderHandler -> obj
override this.Deserialize : System.IO.Stream * System.Runtime.Remoting.Messaging.HeaderHandler -> obj
Public Function Deserialize (serializationStream As Stream, handler As HeaderHandler) As Object
參數
- serializationStream
- Stream
要還原序列化物件圖形的來源資料流。
- handler
- HeaderHandler
處理在 serializationStream
中任何標頭的 HeaderHandler。 可以是 null
。
傳回
物件圖形的已還原序列化物件或最上層物件 (根)。
實作
例外狀況
serializationStream
為 null
。
呼叫端沒有必要的權限。
備註
警告
BinaryFormatter
不安全且無法確保安全。 如需詳細資訊,請參閱 BinaryFormatter 安全性指南。
標頭僅用於特定遠端處理應用程式。
若要讓還原串行化成功,數據流中的目前位置必須位於物件圖形的開頭。
重要
使用不信任的資料呼叫此方法,會造成安全性上的風險。 呼叫此方法時,請一律使用信任的資料。 如需詳細資訊,請參閱 驗證所有輸入。