Partilhar via


FormatterServices.GetSerializableMembers Método

Definição

Retorna todos os membros serializáveis para uma classe específica.

Sobrecargas

GetSerializableMembers(Type)

Obtém todos os membros serializáveis para uma classe do Typeespecificado.

GetSerializableMembers(Type, StreamingContext)

Obtém todos os membros serializáveis para uma classe do Type especificado e no StreamingContextfornecido.

GetSerializableMembers(Type)

Origem:
FormatterServices.cs
Origem:
FormatterServices.cs
Origem:
FormatterServices.cs

Obtém todos os membros serializáveis para uma classe do Typeespecificado.

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()

Parâmetros

type
Type

O tipo que está sendo serializado.

Retornos

Uma matriz do tipo MemberInfo dos membros não transitórios e não estáticos.

Atributos

Exceções

O parâmetro type é null.

O chamador não tem a permissão necessária.

Comentários

Geralmente, os membros serializáveis de uma classe são membros não transitórios, não estáticos, como campos e propriedades. Para serem incluídas, as propriedades devem ter um getter e um setter. Uma classe que implementa a interface ISerializable ou tem um substituto de serialização não precisa serializar todos esses membros ou pode serializar membros adicionais.

Como o método GetSerializableMembers chama o método Type.GetFields, ele não retorna campos em uma ordem específica, como ordem alfabética ou de declaração. Seu código não deve depender da ordem na qual os campos são retornados.

Confira também

Aplica-se a

GetSerializableMembers(Type, StreamingContext)

Origem:
FormatterServices.cs
Origem:
FormatterServices.cs
Origem:
FormatterServices.cs

Obtém todos os membros serializáveis para uma classe do Type especificado e no StreamingContextfornecido.

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()

Parâmetros

type
Type

O tipo que está sendo serializado ou clonado.

context
StreamingContext

O contexto em que a serialização ocorre.

Retornos

Uma matriz do tipo MemberInfo dos membros não transitórios e não estáticos.

Atributos

Exceções

O parâmetro type é null.

O chamador não tem a permissão necessária.

Comentários

Geralmente, os membros serializáveis de uma classe são membros não transitórios, não estáticos, como campos e propriedades. Para serem incluídas, as propriedades devem ter um getter e um setter. Uma classe que implementa ISerializable ou tem um substituto de serialização não precisa serializar todos esses membros ou pode serializar membros adicionais.

Se context incluir o valor de enumeração StreamingContextStates.Clone, campos transitórios também serão incluídos na matriz MemberInfo retornada por esse método.

Como o método GetSerializableMembers chama o método Type.GetFields, ele não retorna campos em uma ordem específica, como ordem alfabética ou de declaração. Seu código não deve depender da ordem na qual os campos são retornados.

Confira também

Aplica-se a