IStateFormatter.Deserialize(String) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
將物件狀態圖從序列化的字串形式反序列化。
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 頁面或伺服器控制項重建狀態物件。