<NetFx40_LegacySecurityPolicy> 元素
指定執行階段是否使用舊版程式碼存取安全性 (CAS) 原則。
<設定>
<執行階段>
<NetFx40_LegacySecurityPolicy>
注意
程式碼啟用安全性 (CAS) 在所有版本的 .NET Framework 和 .NET 中已被取代。 最新版本的 .NET 不接受 CAS 批註,並在使用 CAS 相關 API 時產生錯誤。 開發人員應尋求替代方案來完成安全性工作。
Syntax
<NetFx40_LegacySecurityPolicy
enabled="true|false"/>
屬性和項目
下列章節說明屬性、子元素和父元素。
屬性
屬性 | 描述 |
---|---|
enabled |
必要屬性。 指定執行階段是否使用舊版 CAS 原則。 |
啟用屬性
值 | 描述 |
---|---|
false |
執行階段不使用舊版 CAS 原則。 此為預設值。 |
true |
執行階段使用舊版 CAS 原則。 |
子元素
無。
父項目
元素 | Description |
---|---|
configuration |
通用語言執行平台和 .NET Framework 應用程式所使用之每個組態檔中的根項目。 |
runtime |
包含有關執行階段初始化選項的資訊。 |
備註
在 .NET Framework 3.5 版和更早版本中,CAS 原則一律有效。 在 .NET Framework 4 中,必須啟用 CAS 原則。
CAS 原則具版本特定性。 .NET Framework 4 必須重新指定存在於舊版.NET Framework中的自訂 CAS 原則。
將 <NetFx40_LegacySecurityPolicy>
元素套用至 .NET Framework 4 元件不會影響安全性透明程式碼;透明度規則仍適用。
重要
套用 <NetFx40_LegacySecurityPolicy>
元素可能會導致由原生映像產生器 (Ngen.exe) 所建立的原生映像組件效能顯著降低,若其未安裝在全域組件快取。 效能降低是因為當套用屬性時,執行階段無法載入組件為原生映像,導致其載入為 Just-In-Time 組件。
注意
如果您在 Visual Studio 專案的專案設定中指定早于 .NET Framework 4 的目標.NET Framework版本,則會啟用 CAS 原則,包括您為該版本指定的任何自訂 CAS 原則。 不過,您將無法使用新的 .NET Framework 4 個類型和成員。 您也可以在應用程式組態檔的啟動設定架構中使用< supportedRuntime > 元素,來指定舊版的 .NET Framework。
注意
組態檔語法會區分大小寫。 您應利用語法與範例區段提供的語法。
組態檔
此元素僅可用於應用程式組態檔。
範例
下列範例示範如何為應用程式啟用舊版 CAS 原則。
<configuration>
<runtime>
<NetFx40_LegacySecurityPolicy enabled="true"/>
</runtime>
</configuration>