Поделиться через


Управление сериализацией и десериализацией с помощью SerializationBinder

При сериализации модуль форматирования передает сведения, необходимые для создания экземпляра объекта правильных типа и версии. Эти сведения обычно содержат полное имя типа и имя сборки объекта. По умолчанию с помощью этих сведений операция десериализации создает экземпляр такого же объекта. Некоторым пользователям может понадобиться возможность выбирать классы для сериализации и десериализации, поскольку исходный класс может отсутствовать на компьютере, где выполняется десериализация, быть перемещенным в другую сборку либо на сервере и клиенте могут требоваться разные версии класса. Дополнительные сведения см. в разделе Использование средства привязки сериализации.

Ee358766.Warning(ru-ru,VS.100).gif Внимание!
Эта функция доступна только при использовании BinaryFormatter или NetDataContractSerializer.

Использование класса SerializationBinder

Класс SerializationBinder является абстрактным классом, который используется для управления фактическими типами, применяемыми при сериализации и десериализации. Чтобы управлять типами, используемыми при сериализации и десериализации, нужно создать класс, производный от класса SerializationBinder, и переопределить методы BindToName и BindToType. Метод BindToName принимает объект Type и возвращает имя типа и сборки. Метод BindToType принимает имя сборки и типа и возвращает объект Type.

См. также

Задачи

Использование средства привязки сериализации

Основные понятия

Сериализация и десериализация