Compartilhar via


FormatterServices.GetSafeUninitializedObject(Type) Método

Definição

Cria uma nova instância do tipo de objeto especificado.

public:
 static System::Object ^ GetSafeUninitializedObject(Type ^ type);
public static object GetSafeUninitializedObject (Type type);
[System.Security.SecurityCritical]
public static object GetSafeUninitializedObject (Type type);
static member GetSafeUninitializedObject : Type -> obj
[<System.Security.SecurityCritical>]
static member GetSafeUninitializedObject : Type -> obj
Public Shared Function GetSafeUninitializedObject (type As Type) As Object

Parâmetros

type
Type

O tipo de objeto a ser criado.

Retornos

Um objeto zerado do tipo especificado.

Atributos

Exceções

O parâmetro type é null.

O parâmetro type não é um tipo válido do Common Language Runtime.

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

Comentários

Como a nova instância do objeto é inicializada como zero e nenhum construtor é executado, o objeto pode não representar um estado considerado válido por esse objeto. GetSafeUninitializedObject só deve ser usado para desserialização quando o usuário pretende preencher imediatamente todos os campos. Ele não cria uma cadeia de caracteres não inicializada, pois a criação de uma instância vazia de um tipo imutável não serve para nenhuma finalidade.

GetSafeUninitializedObject converte todas as Demandas de Link de nível de classe em Demandas para garantir que todos os chamadores diretos e indiretos tenham as permissões especificadas pela demanda. Use GetSafeUninitializedObject para aumentar o nível de segurança ao desserializar de uma fonte parcialmente confiável. Para melhorar o desempenho em cenários de confiança total, use GetUninitializedObject.

Aplica-se a