ObjectStateFormatter.Deserialize Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Désérialise un graphique d’état d’objet à partir d’un formulaire sérialisé.
Surcharges
| Nom | Description |
|---|---|
| Deserialize(Stream) |
Désérialise un graphique d’état d’objet à partir de sa forme sérialisée binaire contenue dans l’objet spécifié Stream . |
| Deserialize(String) |
Désérialise un graphique d’état d’objet à partir de sa forme de chaîne codée en base64 sérialisée. |
Remarques
Important
L’appel de cette méthode avec des données non approuvées est un risque de sécurité. Appelez cette méthode uniquement avec des données approuvées. Pour plus d’informations, consultez Valider toutes les entrées.
Deserialize(Stream)
Désérialise un graphique d’état d’objet à partir de sa forme sérialisée binaire contenue dans l’objet spécifié Stream .
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
Paramètres
- inputStream
- Stream
C’est-à-dire Stream que le ObjectStateFormatter désérialise dans un initialisé object.
Retours
Objet qui représente un graphique d’état d’objet désérialisé.
Exceptions
La valeur spécifiée inputStream est null.
Une exception se produit lors de la désérialisation du Stream. Le message d’exception est ajouté au message du ArgumentException.
Exemples
L’exemple de code suivant montre comment une classe qui dérive de la PageStatePersister classe initialise la ViewState collection. Dans cet exemple, la ViewState collection a été affectée au First champ d’un Pair objet et sérialisée dans un fichier à l’aide de la ObjectStateFormatter classe. Lorsque la Load méthode est appelée, la Deserialize(Stream) méthode est utilisée pour désérialiser l’état d’affichage à partir du fichier et la ViewState propriété est initialisée. Cet exemple de code fait partie d’un exemple plus grand fourni pour la PageStatePersister classe.
//
// 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
Remarques
Tout graphique d’état d’objet sérialisé avec la Serialize méthode peut être désérialisé avec la Deserialize méthode. La Deserialize(Stream) méthode est utilisée pour restaurer un graphique d’état d’objet stocké dans un Stream, tel qu’un FileStream.
Important
L’appel de cette méthode avec des données non approuvées est un risque de sécurité. Appelez cette méthode uniquement avec des données approuvées. Pour plus d’informations, consultez Valider toutes les entrées.
S’applique à
Deserialize(String)
Désérialise un graphique d’état d’objet à partir de sa forme de chaîne codée en base64 sérialisée.
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
Paramètres
- inputString
- String
Chaîne qui ObjectStateFormatter désérialise dans un objet initialisé.
Retours
Objet qui représente un graphique d’état d’objet désérialisé.
Exceptions
La valeur spécifiée inputString est null ou a une Length valeur de 0.
Les données sérialisées ne sont pas valides.
Vérification de validation du code d’authentification de l’ordinateur (MAC) effectuée lors de l’échec de la désérialisation de l’état d’affichage.
Exemples
L’exemple de code suivant montre comment implémenter une méthode qui désérialise une chaîne codée en base64 et retourne une ICollection collection de paramètres de propriété. Cet exemple de code s’appuie sur les paramètres de propriété qui ont été sérialisés avec la ObjectStateFormatter classe, comme indiqué dans la Serialize(Object) méthode.
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
Remarques
Tout graphique d’état d’objet sérialisé avec la Serialize méthode peut être désérialisé avec la Deserialize méthode. La Deserialize(String) méthode est utilisée pour restaurer un graphique d’état d’objet stocké sous forme de chaîne codée en base64.
Important
L’appel de cette méthode avec des données non approuvées est un risque de sécurité. Appelez cette méthode uniquement avec des données approuvées. Pour plus d’informations, consultez Valider toutes les entrées.