<Elemen TypeParameter> (.NET Native)
Menerapkan kebijakan ke jenis yang diwakili oleh argumen Jenis yang diteruskan ke metode.
Sintaks
<Parameter Name="parameter_name"
Activate="policy_type"
Browse="policy_type"
Dynamic="policy_type"
Serialize="policy_type"
DataContractSerializer="policy_type"
DataContractJsonSerializer="policy_type"
XmlSerializer="policy_type"
MarshalObject="policy_type"
MarshalDelegate="policy_type"
MarshalStructure="policy_type" />
Atribut dan Elemen
Bagian berikut menjelaskan atribut, elemen turunan, dan elemen induk.
Atribut
Atribut | Jenis atribut | Deskripsi |
---|---|---|
Name |
Umum | Atribut yang diperlukan. Nama parameter jenis Type. Misalnya, untuk tanda tangan Type.GetInterfaceMap(Type interfaceType) metode , nilai Name atribut adalah "interfaceType". |
Activate |
Refleksi | Atribut opsional. Mengontrol akses runtime ke konstruktor untuk mengaktifkan aktivasi instans. |
Browse |
Refleksi | Atribut opsional. Mengontrol kueri untuk informasi tentang elemen program, tetapi tidak mengaktifkan akses runtime apa pun. |
Dynamic |
Refleksi | Atribut opsional. Mengontrol akses runtime ke semua anggota jenis, termasuk konstruktor, metode, bidang, properti, dan peristiwa, untuk mengaktifkan pemrograman dinamis. |
Serialize |
Serialisasi | Atribut opsional. Mengontrol akses runtime ke konstruktor, bidang, dan properti, untuk memungkinkan instans jenis diserialisasikan dan dideserialisasi oleh pustaka seperti serializer Newtonsoft JSON. |
DataContractSerializer |
Serialisasi | Atribut opsional. Mengontrol kebijakan untuk serialisasi yang menggunakan System.Runtime.Serialization.DataContractSerializer kelas . |
DataContractJsonSerializer |
Serialisasi | Atribut opsional. Mengontrol kebijakan untuk serialisasi JSON yang menggunakan System.Runtime.Serialization.Json.DataContractJsonSerializer kelas . |
XmlSerializer |
Serialisasi | Atribut opsional. Mengontrol kebijakan untuk serialisasi XML yang menggunakan System.Xml.Serialization.XmlSerializer kelas . |
MarshalObject |
Interop | Atribut opsional. Mengontrol kebijakan untuk marshaling jenis referensi ke Windows Runtime dan COM. |
MarshalDelegate |
Interop | Atribut opsional. Mengontrol kebijakan untuk marshaling mendelegasikan jenis sebagai penunjuk fungsi ke kode asli. |
MarshalStructure |
Interop | Atribut opsional. Mengontrol kebijakan untuk marshaling jenis nilai ke kode asli. |
Atribut nama
Nilai | Deskripsi |
---|---|
parameter_name | Nama parameter jenis Type. Misalnya, untuk tanda tangan Type.GetInterfaceMap(Type interfaceType) metode , nilai Name atribut adalah "interfaceType". |
Semua atribut lainnya
Nilai | Deskripsi |
---|---|
policy_setting | Pengaturan yang akan diterapkan ke jenis kebijakan ini. Nilai yang mungkin adalah All , , Public PublicAndInternal , Required Public , Required PublicAndInternal , dan Required All . Untuk informasi selengkapnya, lihat Pengaturan Kebijakan Arahan Runtime. |
Elemen Anak
Tidak ada.
Elemen Induk
Elemen | Deskripsi |
---|---|
<Metode> | Menerapkan kebijakan refleksi runtime ke konstruktor atau metode. |
Keterangan
Elemen <TypeParameter>
ini mirip <dengan elemen Parameter> , kecuali bahwa elemen tersebut hanya dapat diterapkan ke parameter jenis Type. Ini menerapkan kebijakan untuk jenis apa pun yang diwakili pada waktu proses oleh argumen jenis yang ditentukan oleh Name
atribut .
Misalnya, serializer NewtonSoft JSON menyertakan metode statis JsonConvert.DeserializeObject(String value, Type type)
. Arahan refleksi berikut:
<Directives xmlns="http://schemas.microsoft.com/netfx/2013/01/metadata">
<Type Name="Newtonsoft.Json.JsonConvert" >
<Method Name="DeserializeObject">
<GenericParameter Name="type" Serialize="Required All" />
</Method>
</Type>
</Directives>
tentukan bahwa metadata untuk jenis runtime yang diwakili oleh type
argumen harus tersedia untuk serialisasi. Jika arahan runtime ini berlaku untuk proyek yang menyertakan kode sumber berikut:
Type t = typeof(StockQuote);
Object obj = JsonConvert.DeserializeObject(data, t);
arahan refleksi membuat metadata untuk StockQuote
jenis yang tersedia untuk serializer NewtonSoft JSON pada waktu proses.
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk