FormatterServices.GetSerializableMembers 方法

定義

傳回特定類別的所有可序列化成員。

多載

GetSerializableMembers(Type)

為指定 Type 的類別取得所有可序列化成員。

GetSerializableMembers(Type, StreamingContext)

為指定 Type 的類別,並在所提供的 StreamingContext 中,取得所有可序列化成員。

GetSerializableMembers(Type)

來源:
FormatterServices.cs
來源:
FormatterServices.cs
來源:
FormatterServices.cs

為指定 Type 的類別取得所有可序列化成員。

public:
 static cli::array <System::Reflection::MemberInfo ^> ^ GetSerializableMembers(Type ^ type);
public static System.Reflection.MemberInfo[] GetSerializableMembers (Type type);
[System.Security.SecurityCritical]
public static System.Reflection.MemberInfo[] GetSerializableMembers (Type type);
static member GetSerializableMembers : Type -> System.Reflection.MemberInfo[]
[<System.Security.SecurityCritical>]
static member GetSerializableMembers : Type -> System.Reflection.MemberInfo[]
Public Shared Function GetSerializableMembers (type As Type) As MemberInfo()

參數

type
Type

將序列化的型別。

傳回

非暫時性、非靜態成員之 MemberInfo 型別的陣列。

屬性

例外狀況

type 參數為 null

呼叫端沒有必要的權限。

備註

一般而言,類別的可序列化成員是非暫時性的非靜態成員,例如欄位和屬性。 若要包含,屬性必須同時具有 getter 和 setter。 實作 ISerializable 介面或具有序列化 Surrogate 的類別不需要序列化所有這些成員,也可以序列化其他成員。

GetSerializableMembers因為方法會呼叫 Type.GetFields 方法,所以不會以特定順序傳回欄位,例如字母順序或宣告順序。 您的程式碼不得取決於傳回欄位的順序。

另請參閱

適用於

GetSerializableMembers(Type, StreamingContext)

來源:
FormatterServices.cs
來源:
FormatterServices.cs
來源:
FormatterServices.cs

為指定 Type 的類別,並在所提供的 StreamingContext 中,取得所有可序列化成員。

public:
 static cli::array <System::Reflection::MemberInfo ^> ^ GetSerializableMembers(Type ^ type, System::Runtime::Serialization::StreamingContext context);
public static System.Reflection.MemberInfo[] GetSerializableMembers (Type type, System.Runtime.Serialization.StreamingContext context);
[System.Security.SecurityCritical]
public static System.Reflection.MemberInfo[] GetSerializableMembers (Type type, System.Runtime.Serialization.StreamingContext context);
static member GetSerializableMembers : Type * System.Runtime.Serialization.StreamingContext -> System.Reflection.MemberInfo[]
[<System.Security.SecurityCritical>]
static member GetSerializableMembers : Type * System.Runtime.Serialization.StreamingContext -> System.Reflection.MemberInfo[]
Public Shared Function GetSerializableMembers (type As Type, context As StreamingContext) As MemberInfo()

參數

type
Type

將序列化或複製的型別。

context
StreamingContext

其中發生序列化的內容。

傳回

非暫時性、非靜態成員之 MemberInfo 型別的陣列。

屬性

例外狀況

type 參數為 null

呼叫端沒有必要的權限。

備註

一般而言,類別的可序列化成員是非暫時性的非靜態成員,例如欄位和屬性。 若要包含,屬性必須同時具有 getter 和 setter。 實作 ISerializable 或具有序列化 Surrogate 的類別不需要序列化所有這些成員,也可以序列化其他成員。

如果 context 包含 StreamingContextStates.Clone 列舉值,則暫時性欄位也會包含在此方法傳回的 MemberInfo 陣列中。

GetSerializableMembers因為方法會呼叫 Type.GetFields 方法,所以不會以特定順序傳回欄位,例如字母順序或宣告順序。 您的程式碼不得取決於傳回欄位的順序。

另請參閱

適用於