SerializationInfo.AddValue 方法

定義

加入值至 SerializationInfo

多載

AddValue(String, Object, Type)

將值新增至 SerializationInfo 存放區,其中 valuename 建立關聯,並序列化為 Typetype

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 位元帶正負號的整數值 (Signed Integer) 至 SerializationInfo 存放區。

AddValue(String, Double)

加入雙精度浮點數值至 SerializationInfo 存放區。

AddValue(String, Decimal)

加入十進位值至 SerializationInfo 存放區。

AddValue(String, DateTime)

加入 DateTime 值至 SerializationInfo 存放區。

AddValue(String, Char)

加入 Unicode 字元值至 SerializationInfo 存放區。

AddValue(String, Byte)

加入 8 位元不帶正負號的整數值 (Unsigned Integer) 至 SerializationInfo 存放區。

AddValue(String, Boolean)

加入布林值 (Boolean) 至 SerializationInfo 存放區。

AddValue(String, Object, Type)

來源:
SerializationInfo.cs
來源:
SerializationInfo.cs
來源:
SerializationInfo.cs

將值新增至 SerializationInfo 存放區,其中 valuename 建立關聯,並序列化為 Typetype

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。 這個參數必須永遠是物件本身或其中一個基底類別的型別。

例外狀況

如果 nametypenull

值已經與 name 相關聯。

備註

指派的類型一律是 物件的類型,或其父代之一。

如果新增兩個值,且名稱只有大小寫不同,則不會擲回例外狀況,這不是建議的做法。 不過,新增兩個具有相同名稱的值會導致 SerializationException 擲回 。

適用於

AddValue(String, UInt64)

來源:
SerializationInfo.cs
來源:
SerializationInfo.cs
來源:
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)

來源:
SerializationInfo.cs
來源:
SerializationInfo.cs
來源:
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)

來源:
SerializationInfo.cs
來源:
SerializationInfo.cs
來源:
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)

來源:
SerializationInfo.cs
來源:
SerializationInfo.cs
來源:
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)

來源:
SerializationInfo.cs
來源:
SerializationInfo.cs
來源:
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)

來源:
SerializationInfo.cs
來源:
SerializationInfo.cs
來源:
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

要序列化的值。 這個物件的任何子系將會自動序列化。

例外狀況

namenull

值已經與 name 相關聯。

備註

參數中包含的 value 物件會序列化為 所 value 傳回的類型。

如果新增兩個值,且名稱只有大小寫不同,則不會擲回例外狀況,這不是建議的做法。 不過,新增兩個具有相同名稱的值會導致 SerializationException 擲回 。

適用於

AddValue(String, Int64)

來源:
SerializationInfo.cs
來源:
SerializationInfo.cs
來源:
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)

來源:
SerializationInfo.cs
來源:
SerializationInfo.cs
來源:
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)

來源:
SerializationInfo.cs
來源:
SerializationInfo.cs
來源:
SerializationInfo.cs

加入 16 位元帶正負號的整數值 (Signed Integer) 至 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)

來源:
SerializationInfo.cs
來源:
SerializationInfo.cs
來源:
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)

來源:
SerializationInfo.cs
來源:
SerializationInfo.cs
來源:
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)

來源:
SerializationInfo.cs
來源:
SerializationInfo.cs
來源:
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)

來源:
SerializationInfo.cs
來源:
SerializationInfo.cs
來源:
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)

來源:
SerializationInfo.cs
來源:
SerializationInfo.cs
來源:
SerializationInfo.cs

加入 8 位元不帶正負號的整數值 (Unsigned Integer) 至 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)

來源:
SerializationInfo.cs
來源:
SerializationInfo.cs
來源:
SerializationInfo.cs

加入布林值 (Boolean) 至 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  

適用於