Тема сериализации самая не понятная для большинства начинающих программистов. Сериализация как процесс делиться на две части: сериализация и десериализация. Второй процесс противоположен первому. Попробуем дать определение сериализации – это запись состояния контрола, т.е. сохранение настроек, контрола. Десериализация – процесс восстановления состояния контрола.
Сериализация и ее виды:
- бинарная
- XML сериализация
- SOAP сериализация
Механизмы .NET Framework, которые призваны обеспечить сериализацию классов (на базе Framework 2.0):
Binary serialization classes: BinaryFormatter, SerializableAttriubte, NonSerializableAttribute, ISerializable, IDeserializationCallback
Soap serialization classes: SoapFormatter, ISerializable, IDeserializationCallback
Xml serialization classes: XmlSerializer, IXmlSerializable, XmlElementAttribute,
BINARY
Работает в двух режимах: Автоматическая (на базе методанных класса) и ручная.
Автоматический
Для автоматического режима надо расставить над элементами, которые подлежат сериализации соответствующий атрибут, особенно напрягает момент, когда надо расставлять атрибуты которые исключают из сериализации элементы класса.
Известные недостатки: сериализируется информация о объекте, такая как версия assembly из которой он брался, что не позволяет реализовать backward compatibility… Скорость работы ниже ручной сериализации в разы (связано со скоростью работы с методанными/рефлексии).
... >>>
Be the first to rate this post
- Currently 0/5 Stars.
- 1
- 2
- 3
- 4
- 5
Tags: windows, forms, windows forms, controls, design, architecture, patterns
Categories: .NET | General | WinForms
Actions:
Permalink |
Comments (0) |
RSS