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.
Provides an implementation of the IDesignerLoaderService interface.
Serializes a set of components into a serialization store.
Provides the base class for implementing a CodeDOM-based designer loader.
Determines the localization model to be used by the CodeDom resource adapter.
Provides CodeDOM resource serialization services. This class cannot be inherited.
Serializes an object graph to a series of CodeDOM statements. This class provides an abstract base class for a serializer.
Provides a base class for CodeDomSerializer classes.
The exception that is thrown when line number information is available for a serialization error.
Provides the base class for serializing a set of components or serializable objects into a serialization store.
Provides a stack object that can be used by a serializer to make information available to nested serializers.
The DefaultSerializationProviderAttribute attribute is placed on a serializer to indicate the class to use as a default provider of that type of serializer.
Provides a basic designer loader interface that can be used to implement a custom designer loader.
Provides an implementation of the IDesignerSerializationManager interface.
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.
Provides a means of passing context state among serializers. This class cannot be inherited.
Provides an interface that can be used to optimize the reloading of a designer.
Provides an interface that can extend a designer host to support loading from a serialized state.
Provides an interface that extends IDesignerLoaderHost to specify whether errors are tolerated while loading a design document.
Provides an interface that can extend a designer loader to support asynchronous loading of external components.
Provides an interface that can manage design-time serialization.
Provides an interface that enables access to a serializer.
Provides an interface that can invoke serialization and deserialization.
Provides a service that can generate unique names for objects.
Provides the information necessary to create an instance of an object. This class cannot be inherited.
Provides the base class for serializing a reflection primitive within the object graph.
Represents a single relationship between an object and a member.
Provides the base class for relating one member to another.
Holds a table of statements that is offered by the StatementContext. This class cannot be inherited.
Provides data for the IDesignerSerializationManager.ResolveName event.
Represents the method that handles the IDesignerSerializationManager.ResolveName event of a serialization manager.
A CodeDomSerializer adds a root context to provide a definition of the root object. This class cannot be inherited
Indicates the base serializer to use for a root designer object. This class cannot be inherited.
Provides the base class for storing serialization data for the ComponentSerializationService.
Specifies that serializers should handle default values. This class cannot be inherited.
Provides a location into which statements can be serialized. This class cannot be inherited.
Serializes an object to a new type.