The System.ComponentModel.Design.Serialization namespace provides types that support customization and control of serialization at design time.
The classes in this namespace can be divided into the following categories:
- Serialization attributes that can be used to indicate the serializer to use for a specific type: DesignerSerializerAttribute, to indicate the serializer to use for a particular type; and RootDesignerSerializerAttribute, to indicate the base serializer to use for the root designer.
- Classes that a designer can implement to customize serialization: IDesignerLoaderHost, for loading a designer document from a serialized state; and IDesignerLoaderService, for loading a designer document when external components and asynchronous loading are involved.
- Interfaces that a designer can use to manage the serialization process: IDesignerSerializationManager, to register or retrieve custom serializers; IDesignerSerializationProvider, to make a serializer available to an IDesignerSerializationManager; and IDesignerSerializationService, which provides methods to invoke serialization and deserialization.
- An interface that can be implemented to customize the loading process of a designer: DesignerLoader.
- An interface that can be used to optimize the reloading of a designer: ICodeDomDesignerReload.
- Other helper classes: INameCreationService, an interface for generating unique names for objects; ContextStack, a data structure useful for sharing serialization context information with serializers; and InstanceDescriptor, an object that can describe a serializable object.
Namespace hierarchy
Classes
| Class |
Description |
| CodeDomSerializer |
Serializes an object graph to a series of CodeDOM statements. This class provides an abstract base class for a serializer. |
| CodeDomSerializerException |
The exception that is thrown when line number information is available for a serialization error. |
| ContextStack |
Provides a stack object that can be used by a serializer to make information available to nested serializers. |
| DesignerLoader |
Provides a basic designer loader interface that can be used to implement a custom designer loader. |
| DesignerSerializerAttribute |
Indicates a serializer for the serialization manager to use to serialize the values of the type this attribute is applied to. This class cannot be inherited. |
| InstanceDescriptor |
Provides information necessary to create an instance of an object. This class cannot be inherited. |
| ResolveNameEventArgs |
Provides data for the ResolveName event. |
| RootDesignerSerializerAttribute |
Indicates the base serializer to use for a root designer object. This class cannot be inherited. |
Interfaces
Delegates
See Also
.NET Framework Class Library