FormatterServices.GetSafeUninitializedObject(Type) Метод

Определение

Создает новый экземпляр указанного типа объекта.

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

Параметры

type
Type

Тип создаваемого объекта.

Возвращаемое значение

Отсчитываемый от нуля объект указанного типа.

Атрибуты

Исключения

Параметр type имеет значение null.

Параметр type не является допустимым типом среды CLR.

Вызывающий объект не имеет требуемого разрешения.

Комментарии

Так как новый экземпляр объекта инициализирован до нуля, и конструкторы не выполняются, объект может не представлять состояние, которое считается допустимым этим объектом. GetSafeUninitializedObject следует использовать только для десериализации, когда пользователь намерен немедленно заполнить все поля. Он не создает неинициализированную строку, так как создание пустого экземпляра неизменяемого типа не служит никакой цели.

GetSafeUninitializedObject преобразует все требования уровня класса в запросы , чтобы все прямые и косвенные вызывающие абоненты имели разрешения, которые указывает запрос. Используется GetSafeUninitializedObject для повышения уровня безопасности при десериализации из частично доверенного источника. Для повышения производительности в сценариях полного доверия используйте GetUninitializedObject.

Применяется к