FormatterServices.GetSafeUninitializedObject(Type) Metoda

Definicja

Tworzy nowe wystąpienie określonego typu obiektu.Creates a new instance of the specified object 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

Parametry

type
Type

Typ obiektu do utworzenia.The type of object to create.

Zwraca

Object

Zerowy obiekt określonego typu.A zeroed object of the specified type.

Atrybuty

Wyjątki

typeParametr ma wartość null .The type parameter is null.

typeParametr nie jest prawidłowym typem środowiska uruchomieniowego języka wspólnego.The type parameter is not a valid common language runtime type.

Obiekt wywołujący nie posiada wymaganych uprawnień.The caller does not have the required permission.

Uwagi

Ponieważ nowe wystąpienie obiektu jest inicjowane na zero i nie są wykonywane żadne konstruktory, obiekt może nie reprezentować stanu, który jest uznawany za prawidłowy przez ten obiekt.Because the new instance of the object is initialized to zero and no constructors are run, the object might not represent a state that is regarded as valid by that object. GetSafeUninitializedObject powinien być używany tylko do deserializacji, gdy użytkownik zamierza natychmiast wypełnić wszystkie pola.GetSafeUninitializedObject should only be used for deserialization when the user intends to immediately populate all fields. Nie tworzy niezainicjowanego ciągu, ponieważ utworzenie pustego wystąpienia niezmiennego typu nie pozwala na ich przeznaczenie.It does not create an uninitialized string, since creating an empty instance of an immutable type serves no purpose.

GetSafeUninitializedObject Konwertuje wszystkie żądania na poziomie klasy do wymagań , aby upewnić się, że wszystkie obiekty wywołujące bezpośrednie i pośrednie mają uprawnienia określone przez żądanie.GetSafeUninitializedObject converts all class level Link Demands to Demands to ensure that all direct and indirect callers have the permissions that the demand specifies. Użyj GetSafeUninitializedObject , aby zwiększyć poziom zabezpieczeń podczas deserializacji z częściowo zaufanego źródła.Use GetSafeUninitializedObject to increase the level of security when deserializing from a partially trusted source. Aby uzyskać lepszą wydajność w przypadku scenariuszy z pełnym zaufaniem, użyj GetUninitializedObject .For better performance in full trust scenarios, use GetUninitializedObject.

Dotyczy