ObjectStateFormatter.Serialize Method (Stream, Object)

 

Serializes an object state graph to the specified Stream object.

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

Public Sub Serialize (
	outputStream As Stream,
	stateGraph As Object
)

Parameters

outputStream
Type: System.IO.Stream

A Stream to which the ObjectStateFormatter serializes the state of the specified object.

stateGraph
Type: System.Object

The object to serialize.

Exception Condition
ArgumentNullException

The specified inputStream is null.

Any object state graph that is serialized with the Serialize method can be deserialized with the Deserialize method. The Serialize(Stream, Object) method is used to serialize an object state graph to a binary Stream object.

The following code example demonstrates how a class retrieves an ObjectStateFormatter instance to serialize view state and control state to a stream using the Serialize(Stream, Object) method. This code example is part of a larger example provided for the PageStatePersister class.

'
' 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 'Save

.NET Framework
Available since 2.0
Return to top
Show: