複数のバージョンの .NET Framework の使用
更新 : 2007 年 11 月
既定では、Visual Studio .NET 2003 以降で作成したマネージ アプリケーションを実行するには、共通言語ランタイムのバージョン 1.1 が必要です。以前のバージョンのランタイムを対象としたアプリケーションを作成することが必要な場合もあります。たとえば、すべての顧客が既にバージョン 1.0 のランタイムをインストールしていて、バージョン 1.1 を配置できない場合は、バージョン 1.0 を対象とする必要があります。
メモ : |
---|
Visual Studio .NET 2003 でバージョン 1.0 の共通言語ランタイムを対象とすることもできますが、Visual Studio .NET 2002 を使用することを強くお勧めします。同じコンピュータに両方のバージョンを同時にインストールして実行できます。詳細については、「インストールとセットアップ」を参照してください。 |
注意 : |
---|
以前のバージョンのランタイムを対象とした場合は、以前のバージョンに存在しない .NET Framework クラスまたはメンバを参照したときにアプリケーションの実行が失敗する可能性があります。アプリケーションを適切に実行するには、指定したすべてのバージョンについて、アプリケーションを十分にテストする必要があります。バージョン 1.0 とバージョン 1.1 の違いの詳細については、「.NET Framework Version 1.1 の新機能」を参照してください。 |
Visual Studio .NET 2003 のプロジェクトでは、"サポートされているランタイム" プロパティを使用して必要な共通言語ランタイムのバージョンを指定します。このプロパティは、Windows アプリケーション、Windows サービス、コンソール アプリケーション、および ASP.NET Web アプリケーションのプロジェクトでだけ使用できます。
"サポートされているランタイム" プロパティは、[<プロジェクト名> プロパティ ページ] ダイアログ ボックスで設定できます。
メモ : |
---|
バージョン 1.0 を指定すると、app.config ファイルの該当セクションが、バージョン 1.0 のランタイムで実行可能であることを示す内容に変更されます。アプリケーションは実際にはバージョン 1.1 コンパイラを使用してビルドされ、ランタイム以外のすべての面ではバージョン 1.1 アプリケーションになります。 |
複数のバージョンのランタイムをサポートするように指定した場合は、複数のバージョンのランタイムがインストールされたコンピュータでアプリケーションを実行すると、.config ファイルで最初に指定されたバージョンが読み込まれます。
Windows アプリケーション、Windows サービス、またはコンソール アプリケーションのプロジェクト
これらの種類のプロジェクトに対しては、ランタイムを選択すると、プロジェクト システムがプロジェクトの app.config ファイルを更新するか、存在しない場合には app.config ファイルを作成します。実行時には、app.config ファイルの名前が filename.ext.config になり、実行可能ファイルと同じディレクトリに格納されている必要があります。プロジェクト システムは、app.config ファイルから filename.ext.config ファイルを作成し、bin\target ディレクトリに配置します。
ASP.NET Web アプリケーション プロジェクト
ASP.NET Web アプリケーション プロジェクトの場合は、このプロパティを変更すると、プロジェクト システムは <dependentAssembly> セクションにアセンブリ バインディング (<bindingRedirect> および <assemblyIdentity>) タグを追加して、プロジェクトの web.config ファイルを更新します。Visual Studio でビルドされた ASP.NET Web アプリケーションの Web ページは、コンパイラに関連付けられたランタイムへの依存性を持つ .dll にプリコンパイルされます。
web.config ファイルは、プロジェクト ディレクトリに残り、名前は変更されません。
詳細については、「ASP.NET の side-by-side 実行の概要」を参照してください。