<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 untuk 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 durasi oleh argumen jenis yang ditentukan oleh Name atribut .

Misalnya, serializer NewtonSoft JSON menyertakan metode statis JsonConvert.DeserializeObject(String value, Type type) . Direktif 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 jenis yang StockQuote tersedia untuk serializer NewtonSoft JSON pada durasi.

Lihat juga