語言

IStateFormatter.Deserialize(String) 方法

定義

將物件狀態圖從序列化的字串形式反序列化。

public:
 System::Object ^ Deserialize(System::String ^ serializedState);
public object Deserialize(string serializedState);
abstract member Deserialize : string -> obj
Public Function Deserialize (serializedState As String) As Object

參數

serializedState
String

一個被 IStateFormatter 反序列化成初始化物件的字串。

傳回

一個代表 ASP.NET 伺服器控制項狀態的物件。

範例

以下程式碼範例展示該方法如何 Deserialize 載入檢視狀態資訊。 該Load類別的方法使用StreamPageStatePersisterIStateFormatter繼承自類別PageStatePersister的介面來反序列化檢視狀態。 此程式碼範例是介面更大 IStateFormatter 範例的一部分。

//
// Load ViewState and ControlState.
//
public override void Load()
{
    Stream stateStream = GetSecureStream();

    // Read the state string, using the StateFormatter.
    StreamReader reader = new StreamReader(stateStream);

    IStateFormatter formatter = this.StateFormatter;
    string fileContents = reader.ReadToEnd();

    // Deserilize returns the Pair object that is serialized in
    // the Save method.
    Pair statePair = (Pair)formatter.Deserialize(fileContents);

    ViewState = statePair.First;
    ControlState = statePair.Second;
    reader.Close();
    stateStream.Close();
}
'
' Load ViewState and ControlState.
'
Public Overrides Sub Load()

    Dim stateStream As Stream
    stateStream = GetSecureStream()

    ' Read the state string, using the StateFormatter.
    Dim reader As New StreamReader(stateStream)

    Dim serializedStatePair As String
    serializedStatePair = reader.ReadToEnd
    Dim statePair As Pair

    Dim formatter As IStateFormatter
    formatter = Me.StateFormatter

    ' Deserilize returns the Pair object that is serialized in
    ' the Save method.      
    statePair = CType(formatter.Deserialize(serializedStatePair), Pair)

    ViewState = statePair.First
    ControlState = statePair.Second
    reader.Close()
    stateStream.Close()
End Sub

備註

使用 Deserialize 方法,將已序列化為 Serialize 方法序列化的 ASP.NET 頁面或伺服器控制項重建狀態物件。

適用於