ヘッダーをスキップ
Oracle® Data Provider for .NET開発者ガイド
12c リリース1(12.1)
B72971-07
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

Oracle Data Provider for .NET管理対象外ドライバのインストール

Oracle Data Provider for .NETはOracle Data Access Components(ODAC)の一部であり、OTNからダウンロードできます。ODAC 11.1.0.6.20から、Oracle Data Provider for .NETはXCopyまたはOracle Universal Installerを使用してインストールできるようになりました。


注意:

この項では、Oracle Universal Installerを使用したインストールについて説明します。XCopyを使用したインストールおよび構成については、インストールに含まれているREADME.TXTを参照してください。

さらに、Oracle Data Provider for .NET Dynamic Helpが、Visual Studio .NETとともに登録され、Visual Studio .NET Dynamic Helpとシームレスに統合された文脈依存のオンライン・ヘルプを提供します。Dynamic Helpでは、ユーザーは、ODP.NETのキーワードにカーソルを置き、[F1]キーを押すことで、Visual Studio .NET IDE内のODP.NETドキュメントにアクセスできます。

Oracle Data Provider for .NETは、インストール先のコンピュータのmachine.configファイルに、OracleClientFactoryクラスを使用したアプリケーション用のエントリを作成します。これにより、DbProviderFactoriesクラスがODP.NETを認識できるようになります。

ODP.NET管理対象外ドライバのEntity Framework 6およびCode First機能は、NuGetパッケージを通じて利用できます。OUIおよびXcopyのインストールにはこのパッケージも含まれていますが、インストール後の構成手順が必要です。ODP.NET管理対象外ドライバのEntity Framework用のNuGetパッケージでは、インストール後の手順が自動化されていますが、アプリケーション固有の接続文字列設定のみ必要になります。

インストール後のファイルの場所

Oracle.DataAccess.dllアセンブリは、次の場所にインストールされます。

.NET Framework 2.0:

ORACLE_BASE\ORACLE_HOME\odp.net\bin\2.xディレクトリ

.NET Framework 4:

ORACLE_BASE\ORACLE_HOME\odp.net\bin\4ディレクトリ


注意:

対応する.NET Frameworkがマシンにインストールされている場合、Oracle.DataAccess.dllアセンブリもグローバル・アセンブリ・キャッシュ(GAC)に追加されます。これによって、既存のアプリケーションは、新しくインストールされたODP.NETバージョンをすぐに使用して確実に起動できます。ただし、この動作が適切でない場合は、GACからポリシーDLLを削除してください。

ドキュメントおよびreadme.txtファイルは、ORACLE_BASE\ORACLE_HOME\ODACDoc\DocumentationLibrary\doc\index.htmにあります。

サンプルはORACLE_BASE\ORACLE_HOME\ODACsamplesディレクトリに用意されています。

非管理DLLの検索順序

ODP.NETは、管理バイナリと非管理バイナリで構成されています。DllPath構成パラメータを使用すれば、依存する非管理Oracle Clientバイナリのロード元の場所ORACLE_BASE\\ORACLE_HOME\binをアプリケーションごとに指定できます。ただし、ORACLE_BASE\\ORACLE_HOMEには、アプリケーションで使用されるものと同じバージョンのODP.NETがインストールされている必要があります。インストールされていない場合、バージョンの不一致による例外がスローされます。

Oracle.DataAccess.dllは、依存する非管理DLL(Oracle Clientなど)を次の順序に基づいて検索します。

  1. アプリケーションまたは実行可能ファイルのディレクトリ。

  2. アプリケーションの構成ファイルまたはweb.configに指定されたDllPath設定。

  3. machine.configに指定されたDllPath設定。

  4. Windowsレジストリに指定されたDllPath設定。

    HKEY_LOCAL_MACHINE\Software\Oracle\ODP.NET\version\DllPath

  5. WindowsのPATH環境変数で指定されたディレクトリ。

ODP.NETのインストール時に、Oracle Universal Installerは、DllPath Windowsレジストリ値を対応する依存DLLがインストールされたORACLE_BASE\\ORACLE_HOME\binディレクトリに設定します。開発者はこの構成情報をアプリケーションごとに指定する必要があります。

新しいバージョンのODP.NETがインストールされると、その新規バージョンに対応したデフォルト値がWindowsレジストリに設定されます。ポリシーDLLがすべてのODP.NET参照をこの新規バージョンのODP.NETにリダイレクトするため、アプリケーションはデフォルト値を使用します。開発者は、このリダイレクトを回避するため、アプリケーションに固有の構成ファイルまたはweb.configファイルを指定する必要があります。構成ファイルの設定は、パッチや新規バージョンが後からインストールされたかどうかにかかわらず、常にアプリケーションに適用されます。

ODP.NET構成ファイル・サポートは 10.2.0.4以降のバージョンでのみ使用可能です。


注意:

.NET Framework 2.0用のOracle.DataAccess.dllおよび.NET Framework 4用のOracle.DataAccess.dllは両方とも同じ非管理DLL(OraOps11w.dll)を使用します。

ODP.NETおよび依存する非管理DLLの不一致

Oracle.DataAccess.dllアセンブリの非管理DLLの正しいバージョンでの使用を強制するため、Oracle.DataAccess.dllが依存する非管理DLLと異なるバージョンをロードすると例外が発生します。