Formatter

Formatter serializable

System.Runtime.Serialization (mscorlib.dll) abstract class

This is the abstract base class for all runtime serialization formatters. It implements the IFormatter interface, which provides the properties that select the binder, surrogates, and streaming context of the formatter. This interface also implements the Serialize( ) and Deserialize( ) methods .

Additionally, the Formatter manages the queue of objects to serialize and provides a set of Write* methods for writing types to the stream.

 public abstract class  Formatter  : IFormatter {  // Protected Constructors  protected  Formatter  ( );  // Protected Instance Fields  protected ObjectIDGenerator  m_idGenerator  ;    protected Queue  m_objectQueue  ;  // Public Instance Properties  public abstract SerializationBinder  Binder  {set; get; }  //implements IFormatter  public abstract StreamingContext  Context  {set; get; }  // implements IFormatter  public abstract ISurrogateSelector  SurrogateSelector  {set; get; }  // implements IFormatter   // Public Instance Methods  public abstract object  Deserialize  (System.IO.Stream   serializationStream   )  // implements IFormatter  public abstract void  Serialize  (System.IO.Stream   serializationStream   , object   graph   )  // implements IFormatter   // Protected Instance Methods  protected virtual object  GetNext  (out long   objID   );    protected virtual long  Schedule  (object   obj   );    protected abstract void  WriteArray  (object   obj   , string   name   , Type   memberType   );    protected abstract void  WriteBoolean  (bool   val   , string   name   );    protected abstract void  WriteByte  (byte   val   , string   name   );    protected abstract void  WriteChar  (char   val   , string   name   );    protected abstract void  WriteDateTime  (DateTime   val   , string   name   );    protected abstract void  WriteDecimal  (decimal   val   , string   name   );    protected abstract void  WriteDouble  (double   val   , string   name   );    protected abstract void  WriteInt16  (short   val   , string   name   );    protected abstract void  WriteInt32  (int   val   , string   name   );    protected abstract void  WriteInt64  (long   val   , string   name   );    protected virtual void  WriteMember  (string   memberName   , object   data   );    protected abstract void  WriteObjectRef  (object   obj   , string   name   , Type   memberType   );    protected abstract void  WriteSByte  (sbyte   val   , string   name   );    protected abstract void  WriteSingle  (float   val   , string   name   );    protected abstract void  WriteTimeSpan  (TimeSpan   val   , string   name   );    protected abstract void  WriteUInt16  (ushort   val   , string   name   );    protected abstract void  WriteUInt32  (uint   val   , string   name   );    protected abstract void  WriteUInt64  (ulong   val   , string   name   );    protected abstract void  WriteValueType  (object   obj   , string   name   , Type   memberType   ); } 


C# in a Nutshell
C # in a Nutshell, Second Edition
ISBN: 0596005261
EAN: 2147483647
Year: 2005
Pages: 963

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net