PageStatePersister.Save Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Le classi derivate eseguono l'override di questo metodo per serializzare informazioni persistenti sullo stato quando un oggetto Page viene scaricato dalla memoria.
public:
abstract void Save();
public abstract void Save ();
abstract member Save : unit -> unit
Public MustOverride Sub Save ()
Esempio
Nell'esempio PageStatePersister di codice seguente viene illustrato come una classe derivata dalla classe implementa il metodo per rendere permanente lo Save stato di visualizzazione a un supporto di persistenza. Usa StreamPageStatePersister
un IStateFormatter oggetto per serializzare il contenuto della proprietà e ControlState della ViewState proprietà. Questo esempio di codice fa parte di un esempio più grande 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 proprietà e ControlState a un supporto di ViewState persistenza.