ObjectStateFormatter.Serialize Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Serialiseert een objectstatusgrafiek.
Overloads
| Name | Description |
|---|---|
| Serialize(Object) |
Serialiseert een objectstatusgrafiek naar een met base64 gecodeerde tekenreeks. |
| Serialize(Stream, Object) |
Hiermee serialiseert u een objectstatusgrafiek naar het opgegeven Stream object. |
Serialize(Object)
Serialiseert een objectstatusgrafiek naar een met base64 gecodeerde tekenreeks.
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
Parameters
- stateGraph
- Object
Het object dat moet worden geserialiseerd.
Retouren
Een met base 64 gecodeerde tekenreeks die de geserialiseerde objectstatus van de stateGraph parameter vertegenwoordigt.
Voorbeelden
In het volgende codevoorbeeld ziet u hoe u de waarden van een set besturingseigenschappen kunt serialiseren naar een met base64 gecodeerde tekenreeks met behulp van de Serialize(Object) methode. De tekenreeks kan op een later tijdstip worden gedeserialiseerd met de Deserialize(String) methode.
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)
Opmerkingen
Elke objectgrafiek die met de Serialize methode wordt geserialiseerd, kan met de Deserialize methode worden gedeserialiseerd. De Serialize(Object) methode wordt gebruikt om een objectstatusgrafiek te serialiseren naar een met base64 gecodeerd tekenreeksformulier.
Van toepassing op
Serialize(Stream, Object)
Hiermee serialiseert u een objectstatusgrafiek naar het opgegeven Stream object.
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)
Parameters
- outputStream
- Stream
Een Stream object waarnaar de ObjectStateFormatter status van het opgegeven object serialiseert.
- stateGraph
- Object
Het object dat moet worden geserialiseerd.
Uitzonderingen
De opgegeven outputStream is null.
Voorbeelden
In het volgende codevoorbeeld ziet u hoe een klasse een ObjectStateFormatter exemplaar ophaalt om de weergavestatus en controlestatus naar een stream te serialiseren met behulp van de Serialize(Stream, Object) methode. Dit codevoorbeeld maakt deel uit van een groter voorbeeld voor de PageStatePersister klasse.
//
// 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
Opmerkingen
Elke objectstatusgrafiek die met de Serialize methode wordt geserialiseerd, kan met de Deserialize methode worden gedeserialiseerd. De Serialize(Stream, Object) methode wordt gebruikt om een objectstatusgrafiek te serialiseren naar een binair Stream object.