#region 程序集 mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
// C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.1\mscorlib.dll
#endregion
using System.Runtime.InteropServices;
using System.Security;
namespace System.Runtime.Serialization
{
//
// 摘要:
// 将序列化或反序列化对象所需的所有数据都存储。 此类不能被继承。
[ComVisible(true)]
public sealed class SerializationInfo
{
//
// 摘要:
// 创建 System.Runtime.Serialization.SerializationInfo 类的新实例。
//
// 参数:
// type:
// System.Type 要序列化的对象。
//
// converter:
// System.Runtime.Serialization.IFormatterConverter 在反序列化过程中使用。
//
// 异常:
// T:System.ArgumentNullException:
// type 或 converter 为 null。
[CLSCompliant(false)]
public SerializationInfo(Type type, IFormatterConverter converter);
//
// 摘要:
// 初始化 System.Runtime.Serialization.SerializationInfo 类的新实例。
//
// 参数:
// type:
// System.Type 要序列化的对象。
//
// converter:
// System.Runtime.Serialization.IFormatterConverter 在反序列化过程中使用。
//
// requireSameTokenInPartialTrust:
// 指示对象是否需要在部分信任环境中的同一个令牌。
[CLSCompliant(false)]
public SerializationInfo(Type type, IFormatterConverter converter, bool requireSameTokenInPartialTrust);
//
// 摘要:
// 返回要序列化对象的类型。
//
// 返回结果:
// 正在序列化的对象类型。
public Type ObjectType { get; }
//
// 摘要:
// 获取已添加到的成员数 System.Runtime.Serialization.SerializationInfo 存储。
//
// 返回结果:
// 已添加到当前的成员数 System.Runtime.Serialization.SerializationInfo。
public int MemberCount { get; }
//
// 摘要:
// 获取或设置要在仅序列化期间序列化的类型的程序集名称。
//
// 返回结果:
// 要序列化的类型的程序集的全名。
//
// 异常:
// T:System.ArgumentNullException:
// 该属性设置为的值是 null。
public string AssemblyName { get; set; }
//
// 摘要:
// 获取或设置的完整名称 System.Type 要序列化。
//
// 返回结果:
// 要序列化的类型的全名。
//
// 异常:
// T:System.ArgumentNullException:
// 此属性设置为的值是 null。
public string FullTypeName { get; set; }
//
// 摘要:
// 获取是否已显式设置的完整类型名。
//
// 返回结果:
// True 如果未显式设置的完整类型名称;否则为 false。
public bool IsFullTypeNameSetExplicit { get; }
//
// 摘要:
// 获取是否已显式设置的程序集名称。
//
// 返回结果:
// True 如果未显式设置的程序集名称;否则为 false。
public bool IsAssemblyNameSetExplicit { get; }
//
// 摘要:
// 将添加到一个 8 位有符号的整数值 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要关联值,因此它可以反序列化更高版本的名称。
//
// value:
// Sbyte 要序列化值。
//
// 异常:
// T:System.ArgumentNullException:
// name 参数为 null。
//
// T:System.Runtime.Serialization.SerializationException:
// 已与关联的值 name。
[CLSCompliant(false)]
public void AddValue(string name, sbyte value);
//
// 摘要:
// 添加到一个值 System.Runtime.Serialization.SerializationInfo 存储,其中 value 与关联 name 并序列化为
// System.Typetype。
//
// 参数:
// name:
// 要关联值,因此它可以反序列化更高版本的名称。
//
// value:
// 要进行序列化的值。 此对象的任何子表达式将自动序列化。
//
// type:
// System.Type 将与当前对象相关联。 此参数必须始终是对象本身或其基类之一的类型。
//
// 异常:
// T:System.ArgumentNullException:
// 如果 name 或 type 是 null。
//
// T:System.Runtime.Serialization.SerializationException:
// 已与关联的值 name。
public void AddValue(string name, object value, Type type);
//
// 摘要:
// 添加到一个布尔值 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要关联值,因此它可以反序列化更高版本的名称。
//
// value:
// 要序列化的布尔值。
//
// 异常:
// T:System.ArgumentNullException:
// name 参数为 null。
//
// T:System.Runtime.Serialization.SerializationException:
// 已与关联的值 name。
public void AddValue(string name, bool value);
//
// 摘要:
// 添加 System.DateTime 值到 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要关联值,因此它可以反序列化更高版本的名称。
//
// value:
// System.DateTime 要序列化值。
//
// 异常:
// T:System.ArgumentNullException:
// name 参数为 null。
//
// T:System.Runtime.Serialization.SerializationException:
// 已与关联的值 name。
public void AddValue(string name, DateTime value);
//
// 摘要:
// 添加到一个十进制值 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要关联值,因此它可以反序列化更高版本的名称。
//
// value:
// 要序列化的十进制值。
//
// 异常:
// T:System.ArgumentNullException:
// 如果 name 参数是 null。
//
// T:System.Runtime.Serialization.SerializationException:
// 如果已经与关联的值 name。
public void AddValue(string name, decimal value);
//
// 摘要:
// 添加到一个双精度浮点值 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要关联值,因此它可以反序列化更高版本的名称。
//
// value:
// 要序列化的双精度值。
//
// 异常:
// T:System.ArgumentNullException:
// name 参数为 null。
//
// T:System.Runtime.Serialization.SerializationException:
// 已与关联的值 name。
public void AddValue(string name, double value);
//
// 摘要:
// 添加到指定的对象 System.Runtime.Serialization.SerializationInfo 存储区,其中是与指定名称相关联。
//
// 参数:
// name:
// 要关联值,因此它可以反序列化更高版本的名称。
//
// value:
// 要进行序列化的值。 此对象的任何子表达式将自动序列化。
//
// 异常:
// T:System.ArgumentNullException:
// name 为 null。
//
// T:System.Runtime.Serialization.SerializationException:
// 已与关联的值 name。
public void AddValue(string name, object value);
//
// 摘要:
// 添加到一个单精度浮点值 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要关联值,因此它可以反序列化更高版本的名称。
//
// value:
// 要序列化的单个值。
//
// 异常:
// T:System.ArgumentNullException:
// name 参数为 null。
//
// T:System.Runtime.Serialization.SerializationException:
// 已与关联的值 name。
public void AddValue(string name, float value);
//
// 摘要:
// 添加到一个 64 位有符号的整数值 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要关联值,因此它可以反序列化更高版本的名称。
//
// value:
// 要序列化的 Int64 值。
//
// 异常:
// T:System.ArgumentNullException:
// name 参数为 null。
//
// T:System.Runtime.Serialization.SerializationException:
// 已与关联的值 name。
public void AddValue(string name, long value);
//
// 摘要:
// 添加到一个 32 位无符号的整数值 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要关联值,因此它可以反序列化更高版本的名称。
//
// value:
// UInt32 要序列化值。
//
// 异常:
// T:System.ArgumentNullException:
// name 参数为 null。
//
// T:System.Runtime.Serialization.SerializationException:
// 已与关联的值 name。
[CLSCompliant(false)]
public void AddValue(string name, uint value);
//
// 摘要:
// 添加到一个 32 位有符号的整数值 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要关联值,因此它可以反序列化更高版本的名称。
//
// value:
// Int32 要序列化值。
//
// 异常:
// T:System.ArgumentNullException:
// name 参数为 null。
//
// T:System.Runtime.Serialization.SerializationException:
// 已与关联的值 name。
public void AddValue(string name, int value);
//
// 摘要:
// 添加到一个 16 位无符号的整数值 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要关联值,因此它可以反序列化更高版本的名称。
//
// value:
// UInt16 要序列化值。
//
// 异常:
// T:System.ArgumentNullException:
// name 参数为 null。
//
// T:System.Runtime.Serialization.SerializationException:
// 已与关联的值 name。
[CLSCompliant(false)]
public void AddValue(string name, ushort value);
//
// 摘要:
// 添加到一个 16 位有符号的整数值 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要关联值,因此它可以反序列化更高版本的名称。
//
// value:
// Int16 要序列化值。
//
// 异常:
// T:System.ArgumentNullException:
// name 参数为 null。
//
// T:System.Runtime.Serialization.SerializationException:
// 已与关联的值 name。
public void AddValue(string name, short value);
//
// 摘要:
// 将添加到一个 8 位无符号的整数值 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要关联值,因此它可以反序列化更高版本的名称。
//
// value:
// 要序列化的字节值。
//
// 异常:
// T:System.ArgumentNullException:
// name 参数为 null。
//
// T:System.Runtime.Serialization.SerializationException:
// 已与关联的值 name。
public void AddValue(string name, byte value);
//
// 摘要:
// 添加到一个 64 位无符号的整数值 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要关联值,因此它可以反序列化更高版本的名称。
//
// value:
// UInt64 要序列化值。
//
// 异常:
// T:System.ArgumentNullException:
// name 参数为 null。
//
// T:System.Runtime.Serialization.SerializationException:
// 已与关联的值 name。
[CLSCompliant(false)]
public void AddValue(string name, ulong value);
//
// 摘要:
// 将添加到一个 Unicode 字符值 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要关联值,因此它可以反序列化更高版本的名称。
//
// value:
// 要序列化的字符值。
//
// 异常:
// T:System.ArgumentNullException:
// name 参数为 null。
//
// T:System.Runtime.Serialization.SerializationException:
// 已与关联的值 name。
public void AddValue(string name, char value);
//
// 摘要:
// 检索一个布尔值,从 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要检索的值与关联的名称。
//
// 返回结果:
// 与关联的布尔值 name。
//
// 异常:
// T:System.ArgumentNullException:
// name 为 null。
//
// T:System.InvalidCastException:
// 与关联的值 name 无法转换为布尔值。
//
// T:System.Runtime.Serialization.SerializationException:
// 当前实例中未找到具有指定名称的元素。
public bool GetBoolean(string name);
//
// 摘要:
// 检索从 8 位无符号的整数值 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要检索的值与关联的名称。
//
// 返回结果:
// 与相关联的 8 位无符号的整数 name。
//
// 异常:
// T:System.ArgumentNullException:
// name 为 null。
//
// T:System.InvalidCastException:
// 与关联的值 name 无法转换为 8 位无符号整数。
//
// T:System.Runtime.Serialization.SerializationException:
// 当前实例中未找到具有指定名称的元素。
public byte GetByte(string name);
//
// 摘要:
// 检索从一个 Unicode 字符值 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要检索的值与关联的名称。
//
// 返回结果:
// 与相关联的 Unicode 字符 name。
//
// 异常:
// T:System.ArgumentNullException:
// name 为 null。
//
// T:System.InvalidCastException:
// 与关联的值 name 无法转换为 Unicode 字符。
//
// T:System.Runtime.Serialization.SerializationException:
// 当前实例中未找到具有指定名称的元素。
public char GetChar(string name);
//
// 摘要:
// 检索 System.DateTime 值从 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要检索的值与关联的名称。
//
// 返回结果:
// System.DateTime 与关联值 name。
//
// 异常:
// T:System.ArgumentNullException:
// name 为 null。
//
// T:System.InvalidCastException:
// 与关联的值 name 无法转换为 System.DateTime 值。
//
// T:System.Runtime.Serialization.SerializationException:
// 当前实例中未找到具有指定名称的元素。
public DateTime GetDateTime(string name);
//
// 摘要:
// 检索一个十进制值,从 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要检索的值与关联的名称。
//
// 返回结果:
// 从一个十进制值 System.Runtime.Serialization.SerializationInfo。
//
// 异常:
// T:System.ArgumentNullException:
// name 为 null。
//
// T:System.InvalidCastException:
// 与关联的值 name 不能转换为十进制。
//
// T:System.Runtime.Serialization.SerializationException:
// 当前实例中未找到具有指定名称的元素。
public decimal GetDecimal(string name);
//
// 摘要:
// 检索从一个双精度浮点值 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要检索的值与关联的名称。
//
// 返回结果:
// 与相关联的双精度浮点值 name。
//
// 异常:
// T:System.ArgumentNullException:
// name 为 null。
//
// T:System.InvalidCastException:
// 与关联的值 name 无法转换为双精度浮点值。
//
// T:System.Runtime.Serialization.SerializationException:
// 当前实例中未找到具有指定名称的元素。
public double GetDouble(string name);
//
// 摘要:
// 返回 System.Runtime.Serialization.SerializationInfoEnumerator 用于循环访问中的名称 / 值对 System.Runtime.Serialization.SerializationInfo
// 存储。
//
// 返回结果:
// 一个 System.Runtime.Serialization.SerializationInfoEnumerator 分析中包含的名称 / 值对 System.Runtime.Serialization.SerializationInfo
// 存储。
public SerializationInfoEnumerator GetEnumerator();
//
// 摘要:
// 检索一个 16 位有符号的整数值,从 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要检索的值与关联的名称。
//
// 返回结果:
// 与相关联的 16 位带符号的整数 name。
//
// 异常:
// T:System.ArgumentNullException:
// name 为 null。
//
// T:System.InvalidCastException:
// 与关联的值 name 无法转换为 16 位有符号整数。
//
// T:System.Runtime.Serialization.SerializationException:
// 当前实例中未找到具有指定名称的元素。
public short GetInt16(string name);
//
// 摘要:
// 检索一个 32 位有符号的整数值,从 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要检索的值的名称。
//
// 返回结果:
// 与相关联的 32 位带符号的整数 name。
//
// 异常:
// T:System.ArgumentNullException:
// name 为 null。
//
// T:System.InvalidCastException:
// 与关联的值 name 无法转换为 32 位有符号整数。
//
// T:System.Runtime.Serialization.SerializationException:
// 当前实例中未找到具有指定名称的元素。
public int GetInt32(string name);
//
// 摘要:
// 检索一个 64 位有符号的整数值,从 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要检索的值与关联的名称。
//
// 返回结果:
// 与相关联的 64 位带符号的整数 name。
//
// 异常:
// T:System.ArgumentNullException:
// name 为 null。
//
// T:System.InvalidCastException:
// 与关联的值 name 无法转换为 64 位有符号整数。
//
// T:System.Runtime.Serialization.SerializationException:
// 当前实例中未找到具有指定名称的元素。
public long GetInt64(string name);
//
// 摘要:
// 检索从 8 位有符号的整数值 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要检索的值与关联的名称。
//
// 返回结果:
// 与相关联的 8 位带符号的整数 name。
//
// 异常:
// T:System.ArgumentNullException:
// name 为 null。
//
// T:System.InvalidCastException:
// 与关联的值 name 无法转换为 8 位有符号整数。
//
// T:System.Runtime.Serialization.SerializationException:
// 当前实例中未找到具有指定名称的元素。
[CLSCompliant(false)]
public sbyte GetSByte(string name);
//
// 摘要:
// 检索从一个单精度浮点值 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要检索的值的名称。
//
// 返回结果:
// 与相关联的单精度浮点值 name。
//
// 异常:
// T:System.ArgumentNullException:
// name 为 null。
//
// T:System.InvalidCastException:
// 与关联的值 name 无法转换为单精度浮点值。
//
// T:System.Runtime.Serialization.SerializationException:
// 当前实例中未找到具有指定名称的元素。
public float GetSingle(string name);
//
// 摘要:
// 检索 System.String 值从 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要检索的值与关联的名称。
//
// 返回结果:
// 与 System.String 关联的 name。
//
// 异常:
// T:System.ArgumentNullException:
// name 为 null。
//
// T:System.InvalidCastException:
// 与关联的值 name 无法转换为 System.String。
//
// T:System.Runtime.Serialization.SerializationException:
// 当前实例中未找到具有指定名称的元素。
public string GetString(string name);
//
// 摘要:
// 检索一个 16 位无符号的整数值,从 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要检索的值与关联的名称。
//
// 返回结果:
// 与相关联的 16 位无符号的整数 name。
//
// 异常:
// T:System.ArgumentNullException:
// name 为 null。
//
// T:System.InvalidCastException:
// 与关联的值 name 无法转换为 16 位无符号整数。
//
// T:System.Runtime.Serialization.SerializationException:
// 当前实例中未找到具有指定名称的元素。
[CLSCompliant(false)]
public ushort GetUInt16(string name);
//
// 摘要:
// 检索一个 32 位无符号的整数值,从 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要检索的值与关联的名称。
//
// 返回结果:
// 与相关联的 32 位无符号的整数 name。
//
// 异常:
// T:System.ArgumentNullException:
// name 为 null。
//
// T:System.InvalidCastException:
// 与关联的值 name 无法转换为 32 位无符号整数。
//
// T:System.Runtime.Serialization.SerializationException:
// 当前实例中未找到具有指定名称的元素。
[CLSCompliant(false)]
public uint GetUInt32(string name);
//
// 摘要:
// 检索一个 64 位无符号的整数值,从 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要检索的值与关联的名称。
//
// 返回结果:
// 与相关联的 64 位无符号的整数 name。
//
// 异常:
// T:System.ArgumentNullException:
// name 为 null。
//
// T:System.InvalidCastException:
// 与关联的值 name 无法转换为 64 位无符号整数。
//
// T:System.Runtime.Serialization.SerializationException:
// 当前实例中未找到具有指定名称的元素。
[CLSCompliant(false)]
public ulong GetUInt64(string name);
//
// 摘要:
// 检索一个值,从 System.Runtime.Serialization.SerializationInfo 存储。
//
// 参数:
// name:
// 要检索的值与关联的名称。
//
// type:
// System.Type 要检索的值。 如果存储的值不能转换为此类型,系统可能会引发 System.InvalidCastException。
//
// 返回结果:
// 指定的对象 System.Type 与关联 name。
//
// 异常:
// T:System.ArgumentNullException:
// name 或 type 为 null。
//
// T:System.InvalidCastException:
// 与关联的值 name 无法转换为 type。
//
// T:System.Runtime.Serialization.SerializationException:
// 当前实例中未找到具有指定名称的元素。
[SecuritySafeCritical]
public object GetValue(string name, Type type);
//
// 摘要:
// 集 System.Type 要序列化的对象。
//
// 参数:
// type:
// System.Type 要序列化的对象。
//
// 异常:
// T:System.ArgumentNullException:
// type 参数为 null。
[SecuritySafeCritical]
public void SetType(Type type);
}
}