WriteOnlyArrayAttribute Klasa

Definicja

W przypadku zastosowania do parametru tablicy w składniku Windows Runtime określa, że zawartość tablicy przekazanej do tego parametru jest używana tylko dla danych wyjściowych. Obiekt wywołujący nie gwarantuje, że zawartość jest zainicjowana, a wywołana metoda nie powinna odczytywać zawartości.

public ref class WriteOnlyArrayAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Parameter, AllowMultiple=false, Inherited=false)]
public sealed class WriteOnlyArrayAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Parameter, AllowMultiple=false, Inherited=false)>]
type WriteOnlyArrayAttribute = class
    inherit Attribute
Public NotInheritable Class WriteOnlyArrayAttribute
Inherits Attribute
Dziedziczenie
WriteOnlyArrayAttribute
Atrybuty

Uwagi

Jeśli parametr tablicy w składniku Windows Runtime jest przekazywany przez wartość (ByVal w Visual Basic), należy zastosować do niego jeden z następujących atrybutów:

  • Zastosuj atrybut, ReadOnlyArrayAttribute jeśli zamierzasz używać zawartości tablicy tylko do wprowadzania danych wejściowych.

  • Zastosuj atrybut, WriteOnlyArrayAttribute jeśli zamierzasz używać zawartości tablicy tylko do danych wyjściowych (czyli metoda ustawia zawartość tablicy, ale nie odczytuje ich).

Zastosowanie obu atrybutów do parametru powoduje błąd.

Ważna

Parametry, które mają WriteOnlyArrayAttribute atrybut zachowują się inaczej w zależności od tego, czy obiekt wywołujący jest napisany w kodzie natywnym, czy w kodzie zarządzanym. Jeśli obiekt wywołujący jest kodem natywnym (rozszerzeniami składników JavaScript lub Visual C++), wywoływana metoda nie może założyć żadnych założeń dotyczących zawartości oryginalnej tablicy. Na przykład tablica odbierana przez metodę może nie zostać zainicjowana lub może zawierać wartości domyślne. Oczekuje się, że metoda ustawi wartości wszystkich elementów w tablicy.

Jeśli obiekt wywołujący jest kodem zarządzanym, oryginalna tablica obiektu wywołującego jest przekazywana do wywoływanej metody, tak jak w każdym wywołaniu metody w .NET Framework. Zawartość tablicy jest modyfikowalna w kodzie zarządzanym, więc metoda może selektywnie odczytywać i zmieniać te wartości. Należy pamiętać, że ma to wpływ na testy jednostkowe napisane dla składnika Windows Runtime. Jeśli testy są zapisywane w kodzie zarządzanym, zawartość tablicy będzie prawdopodobnie modyfikowalna podczas testowania, a wyniki prawdopodobnie będą się różnić, jeśli metoda zostanie wywołana z kodu natywnego później.

Zastosowanie tego atrybutu do parametru out lub parametru InAttribute , który ma atrybut powoduje błąd podczas eksportowania modułu. Zastosowanie atrybutu do parametru, który ma atrybut OutAttribute powoduje błąd, chyba że parametr ma również Visual Basic ByRef modyfikator. W takim przypadku atrybut jest nadmiarowy, ale dozwolony.

Konstruktory

Nazwa Opis
WriteOnlyArrayAttribute()

Inicjuje nowe wystąpienie klasy WriteOnlyArrayAttribute.

Właściwości

Nazwa Opis
TypeId

Po zaimplementowaniu w klasie pochodnej pobiera unikatowy identyfikator dla tego Attribute.

(Odziedziczone po Attribute)

Metody

Nazwa Opis
Equals(Object)

Zwraca wartość wskazującą, czy to wystąpienie jest równe określonemu obiektowi.

(Odziedziczone po Attribute)
GetHashCode()

Zwraca kod skrótu dla tego wystąpienia.

(Odziedziczone po Attribute)
GetType()

Pobiera Type bieżącego wystąpienia.

(Odziedziczone po Object)
IsDefaultAttribute()

Po zastąpieniu w klasie pochodnej wskazuje, czy wartość tego wystąpienia jest wartością domyślną dla klasy pochodnej.

(Odziedziczone po Attribute)
Match(Object)

Po zastąpieniu w klasie pochodnej zwraca wartość wskazującą, czy to wystąpienie jest równe określonemu obiektowi.

(Odziedziczone po Attribute)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Object.

(Odziedziczone po Object)
ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)

Jawne implementacje interfejsu

Nazwa Opis
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Zestaw nazw jest mapowany na odpowiedni zestaw identyfikatorów wysyłania.

(Odziedziczone po Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Pobiera informacje o typie obiektu, którego można użyć do uzyskania informacji o typie dla interfejsu.

(Odziedziczone po Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Pobiera informację o liczbie typów interfejsów, jakie zawiera obiekt (0 lub 1).

(Odziedziczone po Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Zapewnia dostęp do właściwości i metod uwidocznionych przez obiekt.

(Odziedziczone po Attribute)

Dotyczy

Zobacz też