Steuern der Serialisierung und Deserialisierung mit SerializationBinder

Ein Formatierungsprogramm überträgt während der Serialisierung die Informationen, die zum Erstellen einer Instanz eines Objekts mit dem korrekten Typ und der korrekten Version erforderlich sind. Diese Informationen enthalten i. d. R. den vollständigen Typ- und Assemblynamen des Objekts. Standardmäßig verwendet die Deserialisierung diese Informationen zum Erstellen einer Instanz eines identischen Objekts. Einige Benutzer müssen ggf. steuern, welche Klasse serialisiert und deserialisiert werden soll. Der Grund dafür kann sein, dass die ursprüngliche Klasse auf dem Computer, der die Deserialisierung ausführt, nicht vorhanden ist, dass die ursprüngliche Klasse die Assembly gewechselt hat oder dass auf dem Server und Client eine andere Version der Klasse erforderlich ist. Weitere Informationen finden Sie unter Verwendung des Serialisierungsbinders.

Warnung

Die Funktion ist nur verfügbar, wenn Sie BinaryFormatter oder NetDataContractSerializer verwenden.

Verwenden von SerializationBinder

SerializationBinder ist eine abstrakte Klasse, mit der die tatsächlichen Typen gesteuert werden, die während der Serialisierung und Deserialisierung verwendet werden. Zum Steuern der Typen, die während der Serialisierung und Deserialisierung verwendet werden, leiten Sie eine Klasse von SerializationBinder ab und überschreiben die Methoden BindToName System.String, System.String)?qualifyHint=False&autoUpgrade=True und BindToType System.String)?qualifyHint=False&autoUpgrade=True. Die BindToName System.String, System.String)?qualifyHint=False&autoUpgrade=True-Methode verwendet einen Type und gibt eine Assembly und einen Typnamen zurück. Die BindToType System.String)?qualifyHint=False&autoUpgrade=True-Methode verwendet eine Assembly und einen Typnamen und gibt Type zurück.

Siehe auch

Serialisierung und Deserialisierung
Verwendung des Serialisierungsbinders