Condividi tramite


PageStatePersister.Save Metodo

Definizione

Sottoposto a override da classi derivate per serializzare informazioni sullo stato persistenti quando un Page oggetto viene scaricato dalla memoria.

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

Esempio

Nell'esempio di codice seguente viene illustrato come una classe che deriva dalla PageStatePersister classe implementa il Save metodo per rendere persistente lo stato di visualizzazione in un supporto di persistenza. StreamPageStatePersister utilizza un IStateFormatter oggetto per serializzare il contenuto della proprietà e ControlState della ViewState proprietà . Questo esempio di codice fa parte di un esempio più ampio fornito per la PageStatePersister classe .

//
// Persist any ViewState and ControlState.
//
public override void Save()
{

    if (ViewState != null || ControlState != null)
    {
        if (Page.Session != null)
        {
            Stream stateStream = GetSecureStream();

            StreamWriter writer = new StreamWriter(stateStream);

            IStateFormatter formatter = this.StateFormatter;
            Pair statePair = new Pair(ViewState, ControlState);

            // Serialize the statePair object to a string.
            string serializedState = formatter.Serialize(statePair);

            writer.Write(serializedState);
            writer.Close();
            stateStream.Close();
        }
        else
        {
            throw new InvalidOperationException("Session needed for StreamPageStatePersister.");
        }
    }
}
'
' Persist any ViewState and ControlState.
'
Public Overrides Sub Save()

    If Not (ViewState Is Nothing) OrElse Not (ControlState Is Nothing) Then
        If Not (Page.Session Is Nothing) Then

            Dim stateStream As Stream
            stateStream = GetSecureStream()

            ' Write a state string, using the StateFormatter.
            Dim writer As New StreamWriter(stateStream)

            Dim formatter As IStateFormatter
            formatter = Me.StateFormatter

            Dim statePair As New Pair(ViewState, ControlState)

            Dim serializedState As String
            serializedState = formatter.Serialize(statePair)

            writer.Write(serializedState)
            writer.Close()
            stateStream.Close()
        Else
            Throw New InvalidOperationException("Session needed for StreamPageStatePersister.")
        End If
    End If
End Sub

Commenti

Le classi che derivano dalla PageStatePersister classe implementano il Save metodo per rendere persistente il contenuto delle ViewState proprietà e ControlState in un supporto di persistenza.

Si applica a