FormatterServices.GetSafeUninitializedObject(Type) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Crea una nueva instancia del 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
Tipo de objeto que se va a crear.
Devoluciones
Objeto de cero del tipo especificado.
- Atributos
Excepciones
El type parámetro es null.
El type parámetro no es un tipo válido de Common Language Runtime.
El autor de la llamada no tiene el permiso necesario.
Comentarios
Dado que la nueva instancia del objeto se inicializa en cero y no se ejecuta ningún constructor, es posible que el objeto no represente un estado que ese objeto considere válido. GetSafeUninitializedObject solo se debe usar para la deserialización cuando el usuario pretende rellenar inmediatamente todos los campos. No crea una cadena sin inicializar, ya que la creación de una instancia vacía de un tipo inmutable no tiene ningún propósito.
GetSafeUninitializedObject convierte todas las demandas de vínculo de nivel de clase en demandas para asegurarse de que todos los autores de llamadas directos e indirectos tengan los permisos que especifica la demanda. Use GetSafeUninitializedObject para aumentar el nivel de seguridad al deserializar desde un origen de confianza parcial. Para mejorar el rendimiento en escenarios de plena confianza, use GetUninitializedObject.