Edit

Share via


IFormatter Interface

Definition

Caution

BinaryFormatter serialization is obsolete and should not be used. See https://aka.ms/binaryformatter for more information.

Provides functionality for formatting serialized objects.

public interface class IFormatter
public interface IFormatter
[System.Obsolete("BinaryFormatter serialization is obsolete and should not be used. See https://aka.ms/binaryformatter for more information.", DiagnosticId="SYSLIB0011", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public interface IFormatter
[System.Runtime.InteropServices.ComVisible(true)]
public interface IFormatter
type IFormatter = interface
[<System.Obsolete("BinaryFormatter serialization is obsolete and should not be used. See https://aka.ms/binaryformatter for more information.", DiagnosticId="SYSLIB0011", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type IFormatter = interface
[<System.Runtime.InteropServices.ComVisible(true)>]
type IFormatter = interface
Public Interface IFormatter
Derived
Attributes

Remarks

This interface must be implemented by any class identified as a formatter in the System.Runtime.Serialization architecture.

Objects controlling their own serialization can do so by implementing the ISerializable interface. In order for an object to be serialized, you must mark that object as being serializable. You can do this by applying the serializable attribute to a class. If any object in the graph is not serializable, serialization will fail.

Notes to Implementers

All formatters must implement this interface. Use Serialize(Stream, Object) to serialize an object or graph of objects. Use Deserialize(Stream) to deserialize a stream and create a clone of the original object or graph of objects.

Properties

Binder

Gets or sets the SerializationBinder that performs type lookups during deserialization.

Context

Gets or sets the StreamingContext used for serialization and deserialization.

SurrogateSelector

Gets or sets the SurrogateSelector used by the current formatter.

Methods

Deserialize(Stream)
Obsolete.

Deserializes the data on the provided stream and reconstitutes the graph of objects.

Serialize(Stream, Object)
Obsolete.

Serializes an object, or graph of objects with the given root to the provided stream.

Applies to

See also