BinaryFormatter.Deserialize 方法

定義

將資料流還原序列化至物件圖形。

多載

Deserialize(Stream)
已淘汰.

將指定的資料流還原序列化至物件圖形。

Deserialize(Stream, HeaderHandler)

將指定的資料流還原序列化至物件圖形。 所提供的 HeaderHandler 會處理該資料流中的任何標頭。

備註

重要

使用不信任的資料呼叫此方法,會造成安全性上的風險。 呼叫此方法時,請一律使用信任的資料。 如需詳細資訊,請參閱 驗證所有輸入

Deserialize(Stream)

來源:
BinaryFormatter.Core.cs
來源:
BinaryFormatter.Core.cs
來源:
BinaryFormatter.Core.cs

警告

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

要還原序列化物件圖形的來源資料流。

傳回

物件圖形的最上層 (根)。

實作

屬性

例外狀況

serializationStreamnull

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

傳回

物件圖形的已還原序列化物件或最上層物件 (根)。

實作

例外狀況

serializationStreamnull

serializationStream 支援搜尋,但是其長度為 0。

-或-

目標型別是 Decimal,但是值在 Decimal 型別的範圍之外。

呼叫端沒有必要的權限。

備註

警告

BinaryFormatter 不安全且無法確保安全。 如需詳細資訊,請參閱 BinaryFormatter 安全性指南

標頭僅用於特定的遠端應用程式。

若要讓還原序列化成功,資料流程中的目前位置必須位於物件圖形的開頭。

重要

使用不信任的資料呼叫此方法,會造成安全性上的風險。 呼叫此方法時,請一律使用信任的資料。 如需詳細資訊,請參閱 驗證所有輸入

適用於