ObjectStateFormatter.Deserialize Método

Definición

Deserializa un gráfico de estado de objeto partiendo del formato serializado.Deserializes an object state graph from serialized form.

Sobrecargas

Deserialize(Stream)

Deserializa un gráfico de estado de objeto de su formato serializado como binario contenido en el objeto Stream especificado.Deserializes an object state graph from its binary-serialized form that is contained in the specified Stream object.

Deserialize(String)

Deserializa un gráfico de estado de objeto partiendo de su formato de cadena serializada codificada en base64.Deserializes an object state graph from its serialized base64-encoded string form.

Comentarios

Importante

Llamar a este método con datos que no son de confianza supone un riesgo de seguridad.Calling this method with untrusted data is a security risk. Llame a este método solo con datos de confianza.Call this method only with trusted data. Para obtener más información, vea Data Validation (Validación de datos).For more information, see Data Validation.

Deserialize(Stream)

Deserializa un gráfico de estado de objeto de su formato serializado como binario contenido en el objeto Stream especificado.Deserializes an object state graph from its binary-serialized form that is contained in the specified Stream object.

public:
 System::Object ^ Deserialize(System::IO::Stream ^ inputStream);
public object Deserialize (System.IO.Stream inputStream);
member this.Deserialize : System.IO.Stream -> obj
Public Function Deserialize (inputStream As Stream) As Object

Parámetros

inputStream
Stream

Objeto Stream que ObjectStateFormatter deserializa en un object.A Stream that the ObjectStateFormatter deserializes into an initialized object.

Devoluciones

Object

Objeto que representa el gráfico de estado de un objeto deserializado.An object that represents a deserialized object state graph.

Excepciones

El inputStream especificado es null.The specified inputStream is null.

Se produce una excepción durante la deserialización del objeto Stream.An exception occurs during deserialization of the Stream. El mensaje de excepción se agrega al mensaje del objeto ArgumentException.The exception message is appended to the message of the ArgumentException.

Ejemplos

En el ejemplo de código siguiente se muestra cómo una clase que se deriva de la PageStatePersister clase inicializa la ViewState colección.The following code example demonstrates how a class that derives from the PageStatePersister class initializes the ViewState collection. En este ejemplo, la ViewState colección se ha asignado al First campo de un Pair objeto y se ha serializado a un archivo mediante la ObjectStateFormatter clase.In this example, the ViewState collection has been assigned to the First field of a Pair object, and serialized to a file using the ObjectStateFormatter class. Cuando Load se llama al método, el Deserialize(Stream) método se usa para deserializar el estado de vista del archivo y ViewState se inicializa la propiedad.When the Load method is called, the Deserialize(Stream) method is used to deserialize view state from the file, and the ViewState property is initialized. Este ejemplo de código forma parte de un ejemplo más extenso proporcionado para la PageStatePersister clase.This code example is part of a larger example provided for the PageStatePersister class.

//
// Load ViewState and ControlState.
//
public override void Load()
{
    Stream stateStream = GetSecureStream();

    // Read the state string, using the StateFormatter.
    StreamReader reader = new StreamReader(stateStream);

    IStateFormatter formatter = this.StateFormatter;
    string fileContents = reader.ReadToEnd();

    // Deserilize returns the Pair object that is serialized in
    // the Save method.
    Pair statePair = (Pair)formatter.Deserialize(fileContents);

    ViewState = statePair.First;
    ControlState = statePair.Second;
    reader.Close();
    stateStream.Close();
}
'
' Load ViewState and ControlState.
'
Public Overrides Sub Load()

    Dim stateStream As Stream
    stateStream = GetSecureStream()

    ' Read the state string, using the StateFormatter.
    Dim reader As New StreamReader(stateStream)

    Dim serializedStatePair As String
    serializedStatePair = reader.ReadToEnd
    Dim statePair As Pair

    Dim formatter As IStateFormatter
    formatter = Me.StateFormatter

    ' Deserilize returns the Pair object that is serialized in
    ' the Save method.      
    statePair = CType(formatter.Deserialize(serializedStatePair), Pair)

    ViewState = statePair.First
    ControlState = statePair.Second
    reader.Close()
    stateStream.Close()
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.Any object state graph that is serialized with the Serialize method can be deserialized with the Deserialize method. El Deserialize(Stream) método se usa para restaurar un gráfico de estado de objeto almacenado en un Stream , como FileStream .The Deserialize(Stream) method is used to restore an object state graph stored in a Stream, such as a FileStream.

Importante

Llamar a este método con datos que no son de confianza supone un riesgo de seguridad.Calling this method with untrusted data is a security risk. Llame a este método solo con datos de confianza.Call this method only with trusted data. Para obtener más información, vea Data Validation (Validación de datos).For more information, see Data Validation.

Se aplica a

Deserialize(String)

Deserializa un gráfico de estado de objeto partiendo de su formato de cadena serializada codificada en base64.Deserializes an object state graph from its serialized base64-encoded string form.

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

Parámetros

inputString
String

Cadena que la interfaz ObjectStateFormatter deserializa en un objeto inicializado.A string that the ObjectStateFormatter deserializes into an initialized object.

Devoluciones

Object

Objeto que representa el gráfico de estado de un objeto deserializado.An object that represents a deserialized object state graph.

Excepciones

El parámetro inputString especificado es null o tiene una propiedad Length de 0.The specified inputString is null or has a Length of 0.

Los datos serializados no son válidos.The serialized data is invalid.

Comprobación de la validación del código de autenticación de equipos (MAC) que se realiza cuando da error la deserialización del estado de vista.The machine authentication code (MAC) validation check that is performed when deserializing view state fails.

Ejemplos

En el ejemplo de código siguiente se muestra cómo implementar un método que deserializa una cadena codificada en Base64 y devuelve una ICollection colección de valores de propiedad.The following code example demonstrates how to implement a method that deserializes a base64-encoded string and returns an ICollection collection of property settings. Este ejemplo de código se basa en los valores de propiedad que se han serializado con la ObjectStateFormatter clase, como se muestra en el Serialize(Object) método.This code example relies on the property settings having been serialized with the ObjectStateFormatter class, as shown in the Serialize(Object) method.

private ICollection LoadControlProperties (string serializedProperties) {

    ICollection controlProperties = null;

    // Create an ObjectStateFormatter to deserialize the properties.
    ObjectStateFormatter formatter = new ObjectStateFormatter();

    // Call the Deserialize method.
    controlProperties = (ArrayList) formatter.Deserialize(serializedProperties);

    return controlProperties;
}
Private Function LoadControlProperties(serializedProperties As String) As ICollection
   
   Dim controlProperties As ICollection = Nothing
   
   ' Create an ObjectStateFormatter to deserialize the properties.
   Dim formatter As New ObjectStateFormatter()
   
   ' Call the Deserialize method.
   controlProperties = CType(formatter.Deserialize(serializedProperties), ArrayList)
   
   Return controlProperties
End Function 'LoadControlProperties   

Comentarios

Cualquier gráfico de estado de objeto que se serialice con el Serialize método se puede deserializar con el Deserialize método.Any object state graph that is serialized with the Serialize method can be deserialized with the Deserialize method. El Deserialize(String) método se usa para restaurar un gráfico de estado de objeto almacenado en formato de cadena codificada en Base64.The Deserialize(String) method is used to restore an object state graph stored in base64-encoded string form.

Importante

Llamar a este método con datos que no son de confianza supone un riesgo de seguridad.Calling this method with untrusted data is a security risk. Llame a este método solo con datos de confianza.Call this method only with trusted data. Para obtener más información, vea Data Validation (Validación de datos).For more information, see Data Validation.

Se aplica a