次の方法で共有


PageStatePersister.Load メソッド

定義

派生クラスによってオーバーライドされ、 Page オブジェクトがコントロール階層を初期化するときに、永続化された状態情報を逆シリアル化して読み込みます。

public:
 abstract void Load();
public abstract void Load();
abstract member Load : unit -> unit
Public MustOverride Sub Load ()

次のコード例は、 PageStatePersister クラスから派生したクラスが、永続化メディアからビューステートを読み込む Load メソッドを実装する方法を示しています。 StreamPageStatePersisterはストリームからデータを読み取ろうとします。 IStateFormatter オブジェクトを使用してビュー ステート データを逆シリアル化し、ViewState プロパティと ControlState プロパティを初期化します。このプロパティは、ページがコントロールを初期化するために使用します。 このコード例は、 PageStatePersister クラスに提供されるより大きな例の一部です。

//
// 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

注釈

PageStatePersister クラスから派生するクラスは、Load メソッドを実装して、永続化された形式からViewStateプロパティとControlStateプロパティを初期化します。

適用対象