TypeCodeDomSerializer.Serialize Methode

Definition

Serialisiert den Objektstamm, indem eine neue Typdeklaration erstellt wird, die den Stamm definiert.

public:
 virtual System::CodeDom::CodeTypeDeclaration ^ Serialize(System::ComponentModel::Design::Serialization::IDesignerSerializationManager ^ manager, System::Object ^ root, System::Collections::ICollection ^ members);
public virtual System.CodeDom.CodeTypeDeclaration Serialize(System.ComponentModel.Design.Serialization.IDesignerSerializationManager manager, object root, System.Collections.ICollection members);
abstract member Serialize : System.ComponentModel.Design.Serialization.IDesignerSerializationManager * obj * System.Collections.ICollection -> System.CodeDom.CodeTypeDeclaration
override this.Serialize : System.ComponentModel.Design.Serialization.IDesignerSerializationManager * obj * System.Collections.ICollection -> System.CodeDom.CodeTypeDeclaration
Public Overridable Function Serialize (manager As IDesignerSerializationManager, root As Object, members As ICollection) As CodeTypeDeclaration

Parameter

manager
IDesignerSerializationManager

Der Serialisierungs-Manager, der für die Serialisierung verwendet werden soll.

root
Object

Das zu serialisierende Objekt.

members
ICollection

Optionale Sammlung von Elementen. Kann sein null oder leer sein.

Gibt zurück

Ein CodeTypeDeclaration Objekt, das das Stammobjekt definiert.

Ausnahmen

manager oder root ist null.

Hinweise

Die Serialize Methode serialisiert das angegebene Stammobjekt und die optionale Auflistung von Elementen, um eine neue Typdefinition zu erstellen. Wenn die members Auflistung Werte enthält, werden diese Werte serialisiert. Werte selbst können als Membervariablen oder lokale Variablen serialisiert werden. Diese Bestimmung erfolgt durch Suchen nach einer Extendereigenschaft für das aufgerufene GenerateMemberObjekt. Wenn true, wird ein Element generiert. Andernfalls wird eine lokale Variable generiert. Aus Gründen der Einfachheit kann die members Auflistung das Stammobjekt enthalten. In diesem Fall wird das Stammobjekt nicht auch als Member oder lokale Variable hinzugefügt.

Der Name des zurückgegebenen Typs stammt aus dem Namen des Stammobjekts, wenn es sich um ein benanntes Objekt handelt. Wenn nicht, wird ein Name aus dem einfachen Typnamen der Stammklasse hergestellt.

In der folgenden Tabelle sind die Aufgaben aufgeführt, die von der Standardimplementierung der Serialize Methode ausgeführt werden.

Task Description
Kontext-Seeding Der Serialisierungskontext wird mit Daten initialisiert, einschließlich und RootContextCodeTypeDeclaration
Serialisierung von Membern Serialize Führen Sie als Nächstes alle Mitglieder und Anrufe durchSerializeToExpression. Da die Serialisierung opportunistisch durchgeführt SerializeToExpressionwird, stellt dies sicher, dass die Serialisierung nicht zweimal durchgeführt wird.
Stamm serialisierung Als Nächstes wird das Stammobjekt serialisiert, und seine Anweisungen werden der Anweisungsauflistung hinzugefügt.
Integration von Anweisungen Nachdem alle Objekte serialisiert wurden, sortiert die Serialize Methode die Anweisungen und fügt sie einer methode hinzu, die von GetInitializeMethod. Schließlich wird ein Konstruktor erstellt, der alle methoden aufruft, die von GetInitializeMethod.

-

In der folgenden Tabelle sind die Objekte aufgeführt, die die Serialize Methode im Kontextstapel platziert.

Instance Description
TypeCodeDomSerializer Dieser Serialisierer. Die Ableitung von Klassen kann es hilfreich finden, öffentliche Eigenschaften zu dieser Klasse hinzuzufügen.
CodeTypeDeclaration Der Typ, der erstellt wird. Die meisten Objekte benötigen keinen direkten Zugriff darauf.

Gilt für:

Weitere Informationen