ReadOnlyArrayAttribute Osztály

Definíció

Ha egy Windows-futtatókörnyezet összetevő tömbparaméterére van alkalmazva, azt határozza meg, hogy az adott paraméternek átadott tömb tartalma csak bemenetként legyen használva. A hívó elvárja, hogy a tömb változatlan legyen a hívással.

public ref class ReadOnlyArrayAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Parameter, AllowMultiple=false, Inherited=false)]
public sealed class ReadOnlyArrayAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Parameter, AllowMultiple=false, Inherited=false)>]
type ReadOnlyArrayAttribute = class
    inherit Attribute
Public NotInheritable Class ReadOnlyArrayAttribute
Inherits Attribute
Öröklődés
ReadOnlyArrayAttribute
Attribútumok

Megjegyzések

Ha a Windows-futtatókörnyezet összetevő egyik tömbparaméterét érték adja át (ByVal Visual Basic), az alábbi attribútumok egyikét kell alkalmaznia rá:

  • Alkalmazza az ReadOnlyArrayAttribute attribútumot, ha a tömb tartalmát csak bemenetként szeretné használni.

  • Alkalmazza az WriteOnlyArrayAttribute attribútumot, ha a tömb tartalmát csak a kimenethez kívánja használni (vagyis a metódus beállítja a tömb tartalmát, de nem olvassa be őket).

Ha mindkét attribútumot egy paraméterre alkalmazza, az hibát okoz. További információkért, beleértve a tömbök módosításának szabványos mintáját is, tekintse meg a Tömbök Windows-futtatókörnyezet összetevőre való váltását a Windows Fejlesztői központban.

Important

Az attribútummal rendelkező ReadOnlyArrayAttribute paraméterek eltérően viselkednek attól függően, hogy a hívó natív kódban vagy felügyelt kódban van-e megírva. Ha a hívó natív kód (JavaScript vagy Visual C++ összetevőbővítmények), a rendszer akkor másolja a tömböt, amikor a hívás átlépi az alkalmazás bináris interfészének (ABI) határát. Az elemek szükség esetén konvertálódnak. Ezért a metódus által a csak bemeneti tömbön végzett véletlen módosítások nem láthatók a hívó számára.

Ha a hívó felügyelt kód, a rendszer nem másolja a tömböt. Az eredeti tömb elérhető a hívott metódus számára, ahogyan az a .NET-keretrendszer bármely metódushívásában szerepelne. A tömb tartalma .NET keretrendszerkódban módosítható, így a metódus által a tömbön végzett módosítások láthatók a hívó számára. Ez azért fontos, mert hatással van egy Windows-futtatókörnyezet összetevőhöz írt egységtesztekre. Ha a tesztek felügyelt kódban vannak megírva, a tömb tartalma a tesztelés során nem megfelelőnek tűnik.

Ha ezt az attribútumot egy olyan paraméterre alkalmazza, amely rendelkezik az InAttribute adott vagy OutAttribute attribútummal, a modul exportálásakor hibát okoz. Az attribútum paraméterre való out alkalmazása szintén hibát okoz.

Konstruktorok

Name Description
ReadOnlyArrayAttribute()

Inicializálja a ReadOnlyArrayAttribute osztály új példányát.

Tulajdonságok

Name Description
TypeId

Ha származtatott osztályban implementálják, ehhez egy egyedi azonosítót Attributekap.

(Öröklődés forrása Attribute)

Metódusok

Name Description
Equals(Object)

Olyan értéket ad vissza, amely jelzi, hogy ez a példány egyenlő-e egy adott objektummal.

(Öröklődés forrása Attribute)
GetHashCode()

A példány kivonatkódját adja vissza.

(Öröklődés forrása Attribute)
GetType()

Lekéri az Type aktuális példányt.

(Öröklődés forrása Object)
IsDefaultAttribute()

Ha egy származtatott osztályban felül van bírálva, azt jelzi, hogy a példány értéke-e a származtatott osztály alapértelmezett értéke.

(Öröklődés forrása Attribute)
Match(Object)

Származtatott osztály felülírásakor egy olyan értéket ad vissza, amely jelzi, hogy ez a példány egy adott objektummal egyenlő-e.

(Öröklődés forrása Attribute)
MemberwiseClone()

Az aktuális Objectpéldány sekély másolatát hozza létre.

(Öröklődés forrása Object)
ToString()

Az aktuális objektumot jelképező sztringet ad vissza.

(Öröklődés forrása Object)

Explicit interfész-implementációk

Name Description
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Névkészletet képez le a küldési azonosítók megfelelő készletére.

(Öröklődés forrása Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Lekéri egy objektum típusadatait, amelyek a felület típusadatainak lekérésére használhatók.

(Öröklődés forrása Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Lekéri az objektumok által biztosított típusinformációs felületek számát (0 vagy 1).

(Öröklődés forrása Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Hozzáférést biztosít az objektumok által közzétett tulajdonságokhoz és metódusokhoz.

(Öröklődés forrása Attribute)

A következőre érvényes:

Lásd még