语言

SerializationInfo.AddValue 方法

定义

将值添加到 .SerializationInfo

重载

名称 说明
AddValue(String, Object, Type)

将值添加到存储区中,其中与存储关联并序列化为 <a0/>。

AddValue(String, UInt64)

将 64 位无符号整数值添加到存储区 SerializationInfo 中。

AddValue(String, UInt32)

将 32 位无符号整数值添加到存储区 SerializationInfo 中。

AddValue(String, UInt16)

将 16 位无符号整数值添加到存储中 SerializationInfo 。

AddValue(String, Single)

将单精度浮点值添加到存储中 SerializationInfo 。

AddValue(String, SByte)

将 8 位有符号整数值添加到存储区 SerializationInfo 。

AddValue(String, Object)

将指定的对象添加到存储区 SerializationInfo 中,该存储区与指定名称相关联。

AddValue(String, Int64)

将 64 位有符号整数值添加到存储区 SerializationInfo 中。

AddValue(String, Int32)

将 32 位有符号整数值添加到存储中 SerializationInfo 。

AddValue(String, Int16)

将 16 位有符号整数值添加到存储中 SerializationInfo 。

AddValue(String, Double)

将双精度浮点值添加到存储中 SerializationInfo 。

AddValue(String, Decimal)

将十进制值添加到存储区 SerializationInfo 。

AddValue(String, DateTime)

将值 DateTime 添加到存储区 SerializationInfo 中。

AddValue(String, Char)

将 Unicode 字符值添加到存储区 SerializationInfo 。

AddValue(String, Byte)

将 8 位无符号整数值添加到存储区 SerializationInfo 中。

AddValue(String, Boolean)

将布尔值添加到存储中 SerializationInfo 。

AddValue(String, Object, Type)

Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs

将值添加到存储区中,其中与存储关联并序列化为 <a0/>。

public:
 void AddValue(System::String ^ name, System::Object ^ value, Type ^ type);
public void AddValue(string name, object? value, Type type);
public void AddValue(string name, object value, Type type);
member this.AddValue : string * obj * Type -> unit
Public Sub AddValue (name As String, value As Object, type As Type)

参数

name
String

要与值关联的名称,以便稍后可以反序列化它。

value
Object

要序列化的值。 将自动序列化此对象的任何子级。

type
Type

要 Type 与当前对象关联的对象。 此参数必须始终是对象本身的类型或其基类之一。

例外

如果 name 为或 type 为 null。

值已与 name..

注解

分配的类型始终是对象的类型,或者是其父类型之一。

如果添加两个值的名称仅因大小写而异,则不会引发异常,这不是建议的做法。 但是,添加两个名称完全相同的值将导致 SerializationException 引发。

适用于

AddValue(String, UInt64)

Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs

重要

此 API 不符合 CLS。

将 64 位无符号整数值添加到存储区 SerializationInfo 中。

public:
 void AddValue(System::String ^ name, System::UInt64 value);
[System.CLSCompliant(false)]
public void AddValue(string name, ulong value);
[<System.CLSCompliant(false)>]
member this.AddValue : string * uint64 -> unit
Public Sub AddValue (name As String, value As ULong)

参数

name
String

要与值关联的名称,以便稍后可以反序列化它。

value
UInt64

要序列化的值。

属性

例外

参数 name 为 null.

值已与 name..

注解

如果添加两个值的名称仅因大小写而异,则不会引发异常,这不是建议的做法。 但是,添加两个名称完全相同的值将导致 SerializationException 引发。

适用于

AddValue(String, UInt32)

Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs

重要

此 API 不符合 CLS。

将 32 位无符号整数值添加到存储区 SerializationInfo 中。

public:
 void AddValue(System::String ^ name, System::UInt32 value);
[System.CLSCompliant(false)]
public void AddValue(string name, uint value);
[<System.CLSCompliant(false)>]
member this.AddValue : string * uint32 -> unit
Public Sub AddValue (name As String, value As UInteger)

参数

name
String

要与值关联的名称,以便稍后可以反序列化它。

value
UInt32

要 UInt32 序列化的值。

属性

例外

参数 name 为 null.

值已与 name..

注解

如果添加两个值的名称仅因大小写而异,则不会引发异常,这不是建议的做法。 但是,添加两个名称完全相同的值将导致 SerializationException 引发。

适用于

AddValue(String, UInt16)

Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs

重要

此 API 不符合 CLS。

将 16 位无符号整数值添加到存储中 SerializationInfo 。

public:
 void AddValue(System::String ^ name, System::UInt16 value);
[System.CLSCompliant(false)]
public void AddValue(string name, ushort value);
[<System.CLSCompliant(false)>]
member this.AddValue : string * uint16 -> unit
Public Sub AddValue (name As String, value As UShort)

参数

name
String

要与值关联的名称,以便稍后可以反序列化它。

value
UInt16

要 UInt16 序列化的值。

属性

例外

参数 name 为 null.

值已与 name..

注解

如果添加两个值的名称仅因大小写而异,则不会引发异常,这不是建议的做法。 但是,添加两个名称完全相同的值将导致 SerializationException 引发。

适用于

AddValue(String, Single)

Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs

将单精度浮点值添加到存储中 SerializationInfo 。

public:
 void AddValue(System::String ^ name, float value);
public void AddValue(string name, float value);
member this.AddValue : string * single -> unit
Public Sub AddValue (name As String, value As Single)

参数

name
String

要与值关联的名称,以便稍后可以反序列化它。

value
Single

要序列化的单个值。

例外

参数 name 为 null.

值已与 name..

注解

如果添加两个值的名称仅因大小写而异,则不会引发异常,这不是建议的做法。 但是,添加两个名称完全相同的值将导致 SerializationException 引发。

适用于

AddValue(String, SByte)

Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs

重要

此 API 不符合 CLS。

将 8 位有符号整数值添加到存储区 SerializationInfo 。

public:
 void AddValue(System::String ^ name, System::SByte value);
[System.CLSCompliant(false)]
public void AddValue(string name, sbyte value);
[<System.CLSCompliant(false)>]
member this.AddValue : string * sbyte -> unit
Public Sub AddValue (name As String, value As SByte)

参数

name
String

要与值关联的名称,以便稍后可以反序列化它。

value
SByte

要 Sbyte 序列化的值。

属性

例外

参数 name 为 null.

值已与 name..

注解

如果添加两个值的名称仅因大小写而异,则不会引发异常,这不是建议的做法。 但是,添加两个名称完全相同的值将导致 SerializationException 引发。

适用于

AddValue(String, Object)

Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs

将指定的对象添加到存储区 SerializationInfo 中,该存储区与指定名称相关联。

public:
 void AddValue(System::String ^ name, System::Object ^ value);
public void AddValue(string name, object? value);
public void AddValue(string name, object value);
member this.AddValue : string * obj -> unit
Public Sub AddValue (name As String, value As Object)

参数

name
String

要与值关联的名称,以便稍后可以反序列化它。

value
Object

要序列化的值。 将自动序列化此对象的任何子级。

例外

name 是 null。

值已与 name..

注解

参数中包含的 value 对象作为返回 value的类型进行序列化。

如果添加两个值的名称仅因大小写而异,则不会引发异常,这不是建议的做法。 但是,添加两个名称完全相同的值将导致 SerializationException 引发。

适用于

AddValue(String, Int64)

Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs

将 64 位有符号整数值添加到存储区 SerializationInfo 中。

public:
 void AddValue(System::String ^ name, long value);
public void AddValue(string name, long value);
member this.AddValue : string * int64 -> unit
Public Sub AddValue (name As String, value As Long)

参数

name
String

要与值关联的名称,以便稍后可以反序列化它。

value
Int64

要序列化的 Int64 值。

例外

参数 name 为 null.

值已与 name..

注解

如果添加两个值的名称仅因大小写而异,则不会引发异常,这不是建议的做法。 但是,添加两个名称完全相同的值将导致 SerializationException 引发。

适用于

AddValue(String, Int32)

Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs

将 32 位有符号整数值添加到存储中 SerializationInfo 。

public:
 void AddValue(System::String ^ name, int value);
public void AddValue(string name, int value);
member this.AddValue : string * int -> unit
Public Sub AddValue (name As String, value As Integer)

参数

name
String

要与值关联的名称,以便稍后可以反序列化它。

value
Int32

要 Int32 序列化的值。

例外

参数 name 为 null.

值已与 name..

注解

如果添加两个值的名称仅因大小写而异,则不会引发异常,这不是建议的做法。 但是,添加两个名称完全相同的值将导致 SerializationException 引发。

适用于

AddValue(String, Int16)

Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs

将 16 位有符号整数值添加到存储中 SerializationInfo 。

public:
 void AddValue(System::String ^ name, short value);
public void AddValue(string name, short value);
member this.AddValue : string * int16 -> unit
Public Sub AddValue (name As String, value As Short)

参数

name
String

要与值关联的名称,以便稍后可以反序列化它。

value
Int16

要 Int16 序列化的值。

例外

参数 name 为 null.

值已与 name..

注解

如果添加两个值的名称仅因大小写而异,则不会引发异常,这不是建议的做法。 但是,添加两个名称完全相同的值将导致 SerializationException 引发。

适用于

AddValue(String, Double)

Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs

将双精度浮点值添加到存储中 SerializationInfo 。

public:
 void AddValue(System::String ^ name, double value);
public void AddValue(string name, double value);
member this.AddValue : string * double -> unit
Public Sub AddValue (name As String, value As Double)

参数

name
String

要与值关联的名称,以便稍后可以反序列化它。

value
Double

要序列化的双精度值。

例外

参数 name 为 null.

值已与 name..

注解

如果添加两个值的名称仅因大小写而异,则不会引发异常,这不是建议的做法。 但是,添加两个名称完全相同的值将导致 SerializationException 引发。

适用于

AddValue(String, Decimal)

Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs

将十进制值添加到存储区 SerializationInfo 。

public:
 void AddValue(System::String ^ name, System::Decimal value);
public void AddValue(string name, decimal value);
member this.AddValue : string * decimal -> unit
Public Sub AddValue (name As String, value As Decimal)

参数

name
String

要与值关联的名称,以便稍后可以反序列化它。

value
Decimal

要序列化的十进制值。

例外

如果参数 name 为 null.

如果值已与 name..

注解

如果添加两个值的名称仅因大小写而异,则不会引发异常,这不是建议的做法。 但是,添加两个名称完全相同的值将导致 SerializationException 引发。

适用于

AddValue(String, DateTime)

Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs

将值 DateTime 添加到存储区 SerializationInfo 中。

public:
 void AddValue(System::String ^ name, DateTime value);
public void AddValue(string name, DateTime value);
member this.AddValue : string * DateTime -> unit
Public Sub AddValue (name As String, value As DateTime)

参数

name
String

要与值关联的名称,以便稍后可以反序列化它。

value
DateTime

要 DateTime 序列化的值。

例外

参数 name 为 null.

值已与 name..

注解

如果添加两个值的名称仅因大小写而异,则不会引发异常,这不是建议的做法。 但是,添加两个名称完全相同的值将导致 SerializationException 引发。

适用于

AddValue(String, Char)

Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs

将 Unicode 字符值添加到存储区 SerializationInfo 。

public:
 void AddValue(System::String ^ name, char value);
public void AddValue(string name, char value);
member this.AddValue : string * char -> unit
Public Sub AddValue (name As String, value As Char)

参数

name
String

要与值关联的名称,以便稍后可以反序列化它。

value
Char

要序列化的字符值。

例外

参数 name 为 null.

值已与 name..

注解

如果添加两个值的名称仅因大小写而异,则不会引发异常,这不是建议的做法。 但是,添加两个名称完全相同的值将导致 SerializationException 引发。

适用于

AddValue(String, Byte)

Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs

将 8 位无符号整数值添加到存储区 SerializationInfo 中。

public:
 void AddValue(System::String ^ name, System::Byte value);
public void AddValue(string name, byte value);
member this.AddValue : string * byte -> unit
Public Sub AddValue (name As String, value As Byte)

参数

name
String

要与值关联的名称,以便稍后可以反序列化它。

value
Byte

要序列化的字节值。

例外

参数 name 为 null.

值已与 name..

注解

如果添加两个值的名称仅因大小写而异,则不会引发异常,这不是建议的做法。 但是,添加两个名称完全相同的值将导致 SerializationException 引发。

适用于

AddValue(String, Boolean)

Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs
Source:
SerializationInfo.cs

将布尔值添加到存储中 SerializationInfo 。

public:
 void AddValue(System::String ^ name, bool value);
public void AddValue(string name, bool value);
member this.AddValue : string * bool -> unit
Public Sub AddValue (name As String, value As Boolean)

参数

name
String

要与值关联的名称,以便稍后可以反序列化它。

value
Boolean

要序列化的布尔值。

例外

参数 name 为 null.

值已与 name..

注解

如果添加两个值的名称仅因大小写而异,则不会引发异常,这不是建议的做法。 但是,添加两个名称完全相同的值将导致 SerializationException 引发。 例如:

void ISerializable.GetObject(SerializationInfo info, StreamingContext context)
{
   // This will not cause an exception to be thrown.
   info.AddValue("ABC", true);
   info.AddValue("abc", false);
   // However, this will cause the SerializationException to be thrown.
   info.AddValue("XYZ", true);
   info.AddValue("XYZ", false);
}
Private Sub GetObjectData(ByVal info As SerializationInfo, _
ByVal context As StreamingContext)
   ' This will not cause an exception to be thrown.
   info.AddValue("ABC", "upper case")
   info.AddValue("abc", "lower case")
   ' However, this will cause the SerializationException to be thrown.
   info.AddValue("XYZ", "same case")
   info.AddValue("XYZ", "same case")
End Sub

适用于