ObjectStateFormatter.Serialize Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Serializuje graf stavu objektu.
Přetížení
Serialize(Object) |
Serializuje graf stavu objektu na řetězec s kódováním base64. |
Serialize(Stream, Object) |
Serializuje graf stavu objektu na zadaný Stream objekt. |
Serialize(Object)
Serializuje graf stavu objektu na řetězec s kódováním 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
Parametry
- stateGraph
- Object
Objekt, který se má serializovat.
Návraty
Zakódovaný řetězec base-64, který představuje serializovaný stav objektu parametru stateGraph
.
Příklady
Následující příklad kódu ukazuje, jak serializovat hodnoty sady vlastností ovládacího prvku na řetězec s kódováním base64 pomocí Serialize(Object) metody. Řetězec lze deserializovat později pomocí Deserialize(String) metody.
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)
Poznámky
Libovolný objektový graf serializovaný metodou Serialize lze deserializovat metodou Deserialize . Metoda Serialize(Object) se používá k serializaci grafu stavu objektu do formuláře řetězce s kódováním base64.
Platí pro
Serialize(Stream, Object)
Serializuje graf stavu objektu na zadaný Stream objekt.
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)
Parametry
- outputStream
- Stream
A Stream , do kterého ObjectStateFormatter serializuje stav zadaného objektu.
- stateGraph
- Object
Objekt, který se má serializovat.
Výjimky
outputStream
Zadané je null
.
Příklady
Následující příklad kódu ukazuje, jak třída načte ObjectStateFormatter instanci k serializaci stavu zobrazení a stavu řízení do datového proudu pomocí Serialize(Stream, Object) metody. Tento příklad kódu je součástí většího příkladu poskytnutého PageStatePersister pro třídu.
//
// 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
Poznámky
Graf stavu objektu serializovaný metodou Serialize lze deserializovat metodou Deserialize . Metoda Serialize(Stream, Object) se používá k serializaci grafu stavu objektu na binární Stream objekt.