Compartir a través de


ObjectStateFormatter.Serialize Método

Definición

Serializa un gráfico de estado de objeto.

Sobrecargas

Serialize(Object)

Serializa un gráfico de estado de objeto a una cadena codificada en base64.

Serialize(Stream, Object)

Serializa un gráfico de estado de objeto al objeto Stream especificado.

Serialize(Object)

Serializa un gráfico de estado de objeto a una cadena codificada en base64.

public:
 System::String ^ Serialize(System::Object ^ stateGraph);
public string Serialize (object stateGraph);
member this.Serialize : obj -> string
Public Function Serialize (stateGraph As Object) As String

Parámetros

stateGraph
Object

El objeto que se va a serializar.

Devoluciones

String

Cadena codificada en base64 que representa el estado de objeto serializado del parámetro stateGraph.

Ejemplos

En el ejemplo de código siguiente se muestra cómo serializar los valores de un conjunto de propiedades de control en una cadena codificada en base64 mediante el Serialize(Object) método . La cadena se puede deserializar más adelante con el Deserialize(String) método .


ArrayList controlProperties = new ArrayList(3);

controlProperties.Add( SortDirection );
controlProperties.Add( SelectedColumn );
controlProperties.Add( CurrentPage.ToString() );

// Create an ObjectStateFormatter to serialize the ArrayList.
ObjectStateFormatter formatter = new ObjectStateFormatter();

// Call the Serialize method to serialize the ArrayList to a Base64 encoded string.
string base64StateString = formatter.Serialize(controlProperties);
Dim controlProperties As New ArrayList(3)

controlProperties.Add(SortDirection)
controlProperties.Add(SelectedColumn)
controlProperties.Add(CurrentPage.ToString())

' Create an ObjectStateFormatter to serialize the ArrayList.
Dim formatter As New ObjectStateFormatter()

' Call the Serialize method to serialize the ArrayList to a Base64 encoded string.
Dim base64StateString As String = formatter.Serialize(controlProperties)

Comentarios

Cualquier gráfico de objetos que se serialice con el Serialize método se puede deserializar con el Deserialize método . El Serialize(Object) método se usa para serializar un gráfico de estado de objeto en un formulario de cadena codificado en base64.

Se aplica a

Serialize(Stream, Object)

Serializa un gráfico de estado de objeto al objeto Stream especificado.

public:
 void Serialize(System::IO::Stream ^ outputStream, System::Object ^ stateGraph);
public void Serialize (System.IO.Stream outputStream, object stateGraph);
member this.Serialize : System.IO.Stream * obj -> unit
Public Sub Serialize (outputStream As Stream, stateGraph As Object)

Parámetros

outputStream
Stream

Objeto Stream al que serializa el objeto ObjectStateFormatter el estado del objeto especificado.

stateGraph
Object

El objeto que se va a serializar.

Excepciones

El outputStream especificado es null.

Ejemplos

En el ejemplo de código siguiente se muestra cómo una clase recupera una ObjectStateFormatter instancia para serializar el estado de vista y el estado de control en una secuencia mediante el Serialize(Stream, Object) método . Este ejemplo de código forma parte de un ejemplo más grande proporcionado para la PageStatePersister clase .

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

Comentarios

Cualquier gráfico de estado de objeto que se serialice con el Serialize método se puede deserializar con el Deserialize método . El Serialize(Stream, Object) método se usa para serializar un gráfico de estado de objeto en un objeto binario Stream .

Se aplica a