WriteOnlyArrayAttribute Kelas

Definisi

Saat diterapkan ke parameter array dalam komponen Windows Runtime, menentukan bahwa konten array yang diteruskan ke parameter tersebut hanya digunakan untuk output. Penelepon tidak menjamin bahwa konten diinisialisasi, dan metode yang disebut tidak boleh membaca konten.

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
Warisan
WriteOnlyArrayAttribute
Atribut

Keterangan

Jika parameter array di komponen Windows Runtime Anda diteruskan oleh nilai (ByVal di Visual Basic), Anda harus menerapkan salah satu atribut berikut ke dalamnya:

  • Terapkan ReadOnlyArrayAttribute atribut jika Anda berniat untuk konten array yang akan digunakan untuk input saja.

  • WriteOnlyArrayAttribute Terapkan atribut jika Anda berniat konten array yang akan digunakan hanya untuk output (yaitu, metode mengatur konten array tetapi tidak membacanya).

Menerapkan kedua atribut ke parameter menyebabkan kesalahan. Untuk informasi selengkapnya, termasuk pola standar untuk membuat perubahan pada array, lihat Meneruskan array ke komponen Windows Runtime di Windows Dev Center.

Penting

Parameter yang memiliki WriteOnlyArrayAttribute atribut berperilaku berbeda tergantung pada apakah penelepon ditulis dalam kode asli atau kode terkelola. Jika pemanggil adalah kode asli (ekstensi komponen JavaScript atau Visual C++), metode yang disebut tidak dapat membuat asumsi tentang konten array asli. Misalnya, array yang diterima metode mungkin tidak diinisialisasi, atau mungkin berisi nilai default. Metode ini diharapkan untuk mengatur nilai semua elemen dalam array.

Jika penelepon adalah kode terkelola, array asli penelepon diteruskan ke metode yang disebut, karena akan berada dalam panggilan metode apa pun di .NET Framework. Konten array dapat diubah dalam kode terkelola, sehingga metode dapat membaca dan mengubah nilai tersebut secara selektif. Ini penting untuk diingat karena mempengaruhi pengujian unit yang ditulis untuk komponen Windows Runtime. Jika pengujian ditulis dalam kode terkelola, konten array akan tampak dapat diubah selama pengujian, dan hasilnya kemungkinan berbeda jika metode dipanggil dari kode asli nanti.

Menerapkan atribut ini ke out parameter atau ke parameter yang memiliki InAttribute atribut menyebabkan kesalahan saat modul diekspor. Menerapkan atribut ke parameter yang memiliki OutAttribute atribut menyebabkan kesalahan kecuali parameter juga memiliki pengubah Visual Basic ByRef . Dalam hal ini, atributnya berlebihan tetapi diizinkan.

Konstruktor

WriteOnlyArrayAttribute()

Menginisialisasi instans baru kelas WriteOnlyArrayAttribute.

Properti

TypeId

Ketika diimplementasikan di kelas turunan, mendapatkan pengidentifikasi unik untuk ini Attribute.

(Diperoleh dari Attribute)

Metode

Equals(Object)

Mengembalikan nilai yang menunjukkan apakah instans ini sama dengan objek tertentu.

(Diperoleh dari Attribute)
GetHashCode()

Mengembalikan kode hash untuk instans ini.

(Diperoleh dari Attribute)
GetType()

Mendapatkan dari instans Type saat ini.

(Diperoleh dari Object)
IsDefaultAttribute()

Ketika ditimpa di kelas turunan, menunjukkan apakah nilai instans ini adalah nilai default untuk kelas turunan.

(Diperoleh dari Attribute)
Match(Object)

Saat ditimpa di kelas turunan, mengembalikan nilai yang menunjukkan apakah instans ini sama dengan objek tertentu.

(Diperoleh dari Attribute)
MemberwiseClone()

Membuat salinan dangkal dari saat ini Object.

(Diperoleh dari Object)
ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Implementasi Antarmuka Eksplisit

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

Memetakan sekumpulan nama ke sekumpulan pengidentifikasi pengiriman yang sesuai.

(Diperoleh dari Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Mengambil informasi jenis untuk objek, yang dapat digunakan untuk mendapatkan informasi jenis untuk antarmuka.

(Diperoleh dari Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Mengambil jumlah antarmuka informasi jenis yang disediakan objek (baik 0 atau 1).

(Diperoleh dari Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Menyediakan akses ke properti dan metode yang diekspos oleh objek.

(Diperoleh dari Attribute)

Berlaku untuk

Lihat juga