<應用程式>元素 (.NET Native)
做為容器,以包含整個應用程式中,可在執行階段將中繼資料用於反映的類型和類型成員,並將執行階段反映原則套用至應用程式中的所有程式元素。
<指令>元素<應用程式>元素 (rd.xml)
語法
<Application Activate="policy_setting"
Browse="policy_setting"
Dynamic="policy_setting"
Serialize="policy_setting"
DataContractSerializer="policy_setting"
DataContractJsonSerializer="policy_setting"
XmlSerializer="policy_setting"
MarshalObject="policy_setting"
MarshalDelegate="policy_setting"
MarshalStructure="policy_setting" />
屬性和項目
下列章節說明屬性、子元素和父元素。 在「子元素」表格中,原則會指出可在執行階段供特定程式元素使用的中繼資料種類。
屬性
屬性 | 屬性類型 | 描述 |
---|---|---|
Activate |
反映 | 選用屬性。 控制建構函式的執行階段存取,以便啟動執行個體。 |
Browse |
反映 | 選用屬性。 控制對類型相關資訊的查詢,或控制類型的列舉,但不會在執行階段啟用任何動態存取。 |
Dynamic |
反映 | 選用屬性。 控制對所有類型成員 (包括建構函式、方法、欄位、屬性和事件) 的執行階段存取,以啟用動態程式設計。 |
Serialize |
序列化 | 選用屬性。 控制建構函式、欄位和屬性的執行階段存取,以便 Newtonsoft JSON 序列化程式等程式庫可對類型執行個體進行序列化和還原序列化。 |
DataContractSerializer |
序列化 | 選用的屬性。 控制使用 System.Runtime.Serialization.DataContractSerializer 類別的序列化原則。 |
DataContractJsonSerializer |
序列化 | 選用的屬性。 控制使用 System.Runtime.Serialization.Json.DataContractJsonSerializer 類別的 JSON 序列化原則。 |
XmlSerializer |
序列化 | 選用的屬性。 控制使用 System.Xml.Serialization.XmlSerializer 類別的 XML 序列化原則。 |
MarshalObject |
Interop | 選用的屬性。 控制 Windows 執行階段和 COM 之參考類型的封送處理原則。 |
MarshalDelegate |
Interop | 選用的屬性。 控制將委派類型當作函式指標封送處理至機器碼的原則。 |
MarshalStructure |
Interop | 選用的屬性。 控制將結構封送處理至機器碼的原則。 |
所有屬性
值 | Description |
---|---|
policy_setting | 要讓這個原則在應用程式中套用至類型的設定。 可能的值為 All 、Auto 、Excluded 、Public 、PublicAndInternal 、Required Public 、Required PublicAndInternal 和 Required All 。 如需詳細資訊,請參閱執行階段指示詞原則設定。 |
子元素
元素 | 描述 |
---|---|
<組件> | 將原則套用至特定組件中的所有類型。 |
<Namespace> | 將原則套用至特定命名空間中的所有類型。 |
<類型> | 將原則套用至特定類型,例如類別或結構。 |
<TypeInstantiation> | 將原則套用至建構的泛型類型。 例如,<TypeInstantiation> 項目可用來定義 List<String> 類型的原則。 |
<方法> | 將原則套用至特定類型上的方法。 |
<MethodInstantiation> | 將原則套用至建構的泛型方法。 |
<屬性> | 將原則套用至特定類型上的屬性。 |
<欄位> | 將原則套用至特定類型上的欄位。 |
<事件> | 將原則套用至特定類型上的事件。 |
父項目
元素 | 描述 |
---|---|
<指示詞> | 執行階段指示詞檔案的根項目。 |
備註
<Directives> 元素可以包含零個或一個 <Application>
元素。 不支援單一反映指示詞檔案中有多個 <Application>
元素。
<Application>
元素有兩種用法:
做為容器,以定義在執行階段會需要其中繼資料的程式元素。 在此情況下,
<Application>
元素不需要任何屬性。 在編譯時期,編譯器工具會在所有程式庫 (包括 .NET Framework 核心程式庫) 中,搜尋<Application>
元素的子元素所識別的程式元素。 相對地,編譯器工具只會在 <Library> 元素指定的程式庫中,搜尋 <Library> 的子元素所識別的程式元素。做為用來為反映、序列化和 interop 設定整個應用程式原則的元素。
<Application>
元素的屬性會定義整個應用程式原則,這可能會被<Application>
或 <Library> 元素定義的子元素覆寫。