アセンブリ バインディングのリダイレクトの構成
更新 : 2007 年 11 月
既定では、アプリケーションは、アプリケーションのコンパイルに使用したランタイム バージョンと共に出荷された .NET Framework アセンブリのセットを使用します。アプリケーション構成ファイルの <assemblyBinding> 要素で appliesTo 属性を使用すると、アセンブリ バインディング参照を .NET Framework アセンブリの特定のバージョンにリダイレクトできます。このオプションの属性は、.NET Framework のバージョン番号を使用して、どのバージョンに適用するのかを示します。appliesTo 属性が指定されていない場合、<assemblyBinding> 要素は .NET Framework のすべてのバージョンに適用されます。
appliesTo 属性は .NET Framework Version 1.1 で導入されたので、.NET Framework Version 1.0 では無視されます。つまり、appliesTo 属性が指定されている場合でも、.NET Framework Version 1.0 を使用しているときはすべての <assemblyBinding> 要素が適用されます。
メモ : |
---|
appliesTo 属性は、アセンブリ バインディングのリダイレクトをランタイムの特定のバージョンに制限するために使用します。 |
たとえば、.NET Framework Version 1.0 アセンブリのアセンブリ バインディングをリダイレクトするには、アプリケーション構成ファイルに次の XML コードを追加します。
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1" appliesTo="v1.0.3705">
<dependentAssembly>
* assembly information goes here *
</dependentAssembly>
</assemblyBinding>
</runtime>
<assemblyBinding> 要素は、順番が区別されます。最初に .NET Framework Version 1.0 のアセンブリのアセンブリ バインディング リダイレクト情報を入力し、その次に .NET Framework Version 1.1 のアセンブリのアセンブリ バインディング リダイレクト情報を入力します。最後に、appliesTo 属性を使用せず、すべてのバージョンの .NET Framework に適用される .NET Framework アセンブリ リダイレクトのアセンブリ バインディング リダイレクト情報を入力します。リダイレクトで矛盾が発生した場合は、構成ファイル内で最初に一致したリダイレクト ステートメントが使用されます。
たとえば、ある参照を .NET Framework Version 1.0 のアセンブリにリダイレクトし、別の参照を .NET Framework Version 1.1 のアセンブリにリダイレクトするには、次の擬似コードに示すパターンを使用します。
<assemblyBinding xmlns="..." appliesTo="v1.0.3705">
<! — .NET Framework version 1.0 redirects here. -->
</assemblyBinding>
<assemblyBinding xmlns="..." appliesTo="v1.1.4322">
<! — .NET Framework version 1.1 redirects here. -->
</assemblyBinding>
<assemblyBinding xmlns="...">
<!-- Redirects meant for all versions of the .NET Framework. -->
</assemblyBinding>
参照
処理手順
方法 : アプリケーション構成ファイルを使用して対象とする .NET Framework のバージョンを指定する