共用方式為


<supportPortability> 要素

規定應用程式可在兩個不同的 .NET Framework 實作中引用相同的組合語言,方法是關閉預設行為,將這些組件視為等價,以提升應用程式可攜性。

<configuration>
  <runtime>
    <assemblyBinding>
      <supportPortability>

語法

<supportPortability PKT="public_key_token" enabled="true|false"/>

屬性和項目

下列章節說明屬性、子元素和父元素。

Attributes

Attribute Description
PKT 必要屬性。

指定受影響組合的公鑰標記,作為字串。
enabled 選擇性屬性。

規定是否應啟用 .NET Framework 組合間可攜性的支援。

啟用屬性

價值觀 Description
true 啟用 .NET Framework 組合間實作間的可攜性支援。 這是預設值。
假的 關閉對指定 .NET Framework 組合間實作間可攜性的支援。 這使得應用程式能夠參考指定組裝的多個實作。

子元素

沒有。

父項目

元素 Description
configuration 通用語言執行平台和 .NET Framework 應用程式所使用之每個組態檔中的根項目。
runtime 包含關於組裝裝訂與垃圾回收的資訊。
assemblyBinding 包含關於組合語言版本重定向及組裝檔位置的資訊。

備註

從 .NET Framework 4 開始,系統自動提供支援可使用 .NET Framework 兩種實作之一的應用程式,例如 .NET Framework 實作或 .NET Framework for Silverlight 實作。 特定 .NET Framework 組合語言的兩個實作在組合語言綁定器中被視為等價。 在某些情境下,這個應用程式的可攜性功能會造成問題。 在這些情況下, <supportPortability> 元素可以用來停用該功能。

其中一個情境是組合語言必須同時參考某個參考組件的 .NET Framework 實作與 .NET Framework for Silverlight 實作。 例如,使用 Windows Presentation Foundation(WPF)撰寫的 XAML 設計器,可能需要同時參考 WPF Desktop 的使用者介面實作,以及 Silverlight 實作中包含的 WPF 子集。 根據預設,不同的參考會導致編譯器錯誤,因為組件繫結關係會將兩個組件視為對等項目。 此元素會停用預設行為,並允許編譯成功。

這很重要

為了讓編譯器將資訊傳遞給通用語言執行時的組合語言綁定邏輯,你必須使用 /appconfig 編譯器選項指定包含此元素的 app.config 檔案位置。

Example

以下範例允許應用程式同時引用任何存在於兩個實作中的 .NET Framework 組合語言的 .NET Framework 實作與 .NET Framework for Silverlight 實作。 /appconfig必須使用編譯器選項來指定此 app.config 檔案的位置。

<configuration>
   <runtime>
      <assemblyBinding>
         <supportPortability PKT="7cec85d7bea7798e" enable="false"/>
         <supportPortability PKT="31bf3856ad364e35" enable="false"/>
      </assemblyBinding>
   </runtime>
</configuration>

另請參閱