PageStatePersister.Save Method ()

 
System_CAPS_noteNote

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Overridden by derived classes to serialize persisted state information when a Page object is unloaded from memory.

Namespace:   System.Web.UI
Assembly:  System.Web (in System.Web.dll)

public abstract void Save()

Classes that derive from the PageStatePersister class implement the Save method to persist the contents of the ViewState and ControlState properties to a persistence medium.

The following code example demonstrates how a class that derives from the PageStatePersister class implements the Save method to persist view state to a persistence medium. The StreamPageStatePersister uses an IStateFormatter object to serialize the contents of the ViewState property and ControlState property. This code example is part of a larger example provided for the PageStatePersister class.

//
// 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.");
    }
}

.NET Framework
Available since 2.0
Return to top
Show: