FormatterServices.GetSafeUninitializedObject(Type) Метод

Определение

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

public static object GetSafeUninitializedObject (Type type);
[System.Security.SecurityCritical]
public static object GetSafeUninitializedObject (Type type);

Параметры

type
Type

Тип объекта для создания.

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

Обнуленный объект заданного типа.

Атрибуты

Исключения

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

Параметр type недопустимого типа общеязыковой среды выполнения.

У вызывающего объекта отсутствует необходимое разрешение.

Комментарии

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

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

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

Продукт Версии
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8 (package-provided), 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1