FormatterServices.GetSerializableMembers Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
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 Type especificado. |
GetSerializableMembers(Type, StreamingContext) |
Obtém todos os membros serializáveis para uma classe do Type especificado e no StreamingContext fornecido. |
GetSerializableMembers(Type)
- Origem:
- FormatterServices.cs
- Origem:
- FormatterServices.cs
- Origem:
- FormatterServices.cs
Obtém todos os membros serializáveis para uma classe do Type especificado.
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 e 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 ISerializable interface ou tem um substituto de serialização não precisa serializar todos esses membros ou pode serializar membros adicionais.
Como o GetSerializableMembers
método chama o Type.GetFields método , 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 em que 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 StreamingContext fornecido.
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 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 e 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 StreamingContextStates.Clone enumeração, os campos transitórios também serão incluídos na MemberInfo matriz retornada por esse método.
Como o GetSerializableMembers
método chama o Type.GetFields método , 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 em que os campos são retornados.