SerializationInfo objects are used
by classes that
customize serialization behavior. The data required for each member
is the name of the member, its type, and its value. Within a
class's ISerializable.GetObjectData(
) block, the AddValue( ) method is used
to add member data. Deserialization is defined within a
deserialization constructor (see ISerializable).
It is specified by retrieving member data with GetValue(
), or one of the many other Get*
methods, and assigning the data to the appropriate members.
public sealed class SerializationInfo {
// Public Constructors
public SerializationInfo(Type type, IFormatterConverter converter);
// Public Instance Properties
public string AssemblyName{set; get; }
public string FullTypeName{set; get; }
public int MemberCount{get; }
// Public Instance Methods
public void AddValue(string name, bool value);
public void AddValue(string name, byte value);
public void AddValue(string name, char value);
public void AddValue(string name, DateTime value);
public void AddValue(string name, decimal value);
public void AddValue(string name, double value);
public void AddValue(string name, short value);
public void AddValue(string name, int value);
public void AddValue(string name, long value);
public void AddValue(string name, object value);
public void AddValue(string name, object value, Type type);
public void AddValue(string name, sbyte value);
public void AddValue(string name, float value);
public void AddValue(string name, ushort value);
public void AddValue(string name, uint value);
public void AddValue(string name, ulong value);
public bool GetBoolean(string name);
public byte GetByte(string name);
public char GetChar(string name);
public DateTime GetDateTime(string name);
public decimal GetDecimal(string name);
public double GetDouble(string name);
public SerializationInfoEnumerator GetEnumerator( );
public short GetInt16(string name);
public int GetInt32(string name);
public long GetInt64(string name);
public sbyte GetSByte(string name);
public float GetSingle(string name);
public string GetString(string name);
public ushort GetUInt16(string name);
public uint GetUInt32(string name);
public ulong GetUInt64(string name);
public object GetValue(string name, Type type);
public void SetType(Type type);
}