2.5 Oracle Data Provider for .NET管理対象ドライバのインストール
ODP.NET管理対象ドライバの導入
ODP.NET管理対象ドライバの導入には、Oracle Universal Installer (OUI)、XCopyまたはNuGetのいずれかを使用します。
OUIを使用する場合: 次のOracle Universal Installer (OUI)の手順に従って、ODP.NET管理対象ドライバをインストールします。
XCopyを使用する場合: インストールを開始するディレクトリにODP.NET管理対象ドライバの.zip
ファイルをダウンロードします。この.zip
ファイルには、XCopyのインストール手順を説明したREADMEファイルが含まれています。
次のいずれかのディレクトリにあるconfigure.bat
スクリプトを実行します。
-
32ビット.NET Frameworkの場合:
OH\odp.net\managed\x86
-
64ビット.NET Frameworkの場合:
OH\odp.net\managed\x64
ODP.NET管理対象ドライバの構成を解除する場合や、マシンから削除する場合のために、各ディレクトリにはunconfigure.bat
が含まれます。
NuGetを使用している場合: ODP.NET NuGetパッケージをダウンロードし、NuGet Package Managerを使用してインストールします。
次のNuGetパッケージを使用できます。
-
ODP.NET管理対象ドライバ
-
Code FirstおよびEntity Framework 6以上用のEntity Frameworkアセンブリは、ODP.NET管理対象ドライバを使用します。
Windowsインストーラを使用している場合: Microsoft Windowsインストーラ(MSI)の手順に従い、ODP.NET管理対象ドライバをインストールします。
ODP.NET管理対象ドライバのファイル
ODP.NET管理対象ドライバには、次のファイルが含まれています。
表2-1 ODP.NET管理対象ドライバのファイルと説明
ファイル | 説明 |
---|---|
|
プラットフォームに依存しない(AnyCPU)、完全管理のADO.NETプロバイダ |
|
プラットフォームに依存する(64ビット.NET Frameworkのみ)、分散トランザクション対応の管理アセンブリ |
|
プラットフォームに依存する(32ビット.NET Frameworkのみ)、分散トランザクション対応の管理アセンブリ |
|
プラットフォームに依存しない(AnyCPU)、完全管理のADO.NETプロバイダのリソースDLL |
|
ODP.NET管理対象ドライバおよび管理対象外ドライバの構成/構成解除を行うための、プラットフォームに依存しない(AnyCPU)ユーティリティ |
|
ODP.NET管理対象ドライバをGACに配置し、構成エントリをmachine.configに追加するためのバッチ・ファイル |
|
ODP.NET管理対象ドライバをGACから削除し、構成エントリをmachine.configから削除するためのバッチ・ファイル |
|
データソースのエイリアスを定義するサンプル構成ファイル |
|
ネットワーク関連の設定を構成するサンプル構成ファイル |
|
ODP.NET管理対象ドライバの構成セクションを定義するXMLスキーマ・ファイル |
|
プラットフォームに依存しない(AnyCPU)、Code FirstおよびEntity Framework 6以上用の完全管理アセンブリ |
|
プラットフォームに依存する(64ビット.NET Framework)、Kerberosサポート用の管理対象アセンブリ |
|
プラットフォームに依存する(32ビット.NET Framework)、Kerberosサポート用の管理対象アセンブリ |
-
Oracle.ManagedDataAccessDTC.dll
が必要になるのは、アプリケーションで分散トランザクションおよびNET Frameworkバージョンが4.5.1以上を使用する場合のみです。.NET Frameworkの以降のバージョンではこのDLLを必要としません。 -
.NET Framework 4.5.1以前で稼働しているODP.NET管理対象ドライバによって分散トランザクションが使用されている場合、該当する
Oracle.ManagedDataAccessDTC.dll
(32ビットまたは64ビットの.NET Framework)を、Oracle.ManagedDataAccess.dll
がロードできるように、Global Assembly Cache (GAC)、またはその.exe
と同じディレクトリにロードする必要があります。インストーラはこのDLLをGACしなくなります。手動で実行する必要があります。 -
Oracle.ManagedDataAccessDTC.dll
はアプリケーションから直接参照しないでください。ODP.NET管理対象ドライバによって暗黙的に参照されます。 -
64ビットのOSでは、OUIによるインストールの完了時、またはXCopyによる
configure.bat
の呼出し時に、x64バージョンのOracle.ManagedDataAccessDTC.dll
のみがGACに配置されます。
関連項目:
インストール手順については、Microsoft Windows用のOracle Databaseインストレーション・ガイド を参照してください。
2.5.1 プラットフォーム依存のアセンブリとその検索順序
ODP.NET管理対象ドライバには、プラットフォーム依存のDLLとして、Oracle.ManagedDataAccessDTC.dll
とOracle.ManagedDataAccessIOP.dll
の2セットがあります。各DLLについて、32ビット版の.NETと64ビット版の.NETがあります。100%管理コードで構成されていますが、.NET外部のAPIを呼び出すため、プラットフォーム依存です。
Oracle.ManagedDataAccessDTC.dll
は、分散トランザクションのコーディネーションをサポートします。アプリケーションでこのアセンブリが必要なのは、.NET Framework 4.5.1以下で分散トランザクションが必要な場合のみです。.NET Framework 4.5.2ではオプションで使用します。
Oracle.ManagedDataAccessIOP.dll
は、Kerberosをサポートします。アプリケーションでこのアセンブリが必要なのは、Kerberosセキュリティを使用する場合のみです。
これら2つのアセンブリは、アプリケーションによって直接参照することは想定されていません。暗黙的に参照されます。ODP.NET管理対象ドライバは、次の検索順序でこれらのアセンブリを参照します。
-
グローバル・アセンブリ・キャッシュ
-
Webアプリケーションのbinディレクトリ、またはWindowsアプリケーションの
EXE
ディレクトリ -
アプリケーションの実行環境が32ビットと64ビットどちらの.NET Frameworkかに応じて、
x86
またはx64
サブディレクトリ。アプリケーションがAnyCPUを使用して作成されている場合、ODP.NETはアセンブリが利用可能なかぎり、適切なビット数のDLLを使用します。アプリケーションがAnyCPUの場合は、この方法で依存するアセンブリを検索することをお薦めします。
たとえば、アプリケーションが64ビット版のOracle.ManagedDataAccessIOP.dll
を使用する場合は、次の手順に従います。
- Visual Studioプロジェクトを右クリックして、「追加」、「新規フォルダ」の順に選択します。
- フォルダに「x64」という名前を付けます。
- 新しく作成したx64フォルダを右クリックして、「追加」、既存の項目の順に選択します。
- DLLがあるフォルダ(通常は
ORACLE_HOME
\odp.net\managed\x64
)を参照してそこまで移動し、 Oracle.ManagedDataAccessIOP.dllを選択します。 - 「追加」をクリックします。
- x64フォルダで、今作成したOracle.ManagedDataAccessIOP.dllをクリックします。
- プロパティのウィンドウで、「出力ディレクタにコピー」を「常にコピー」に設定します。
x86用アプリケーションの場合は、フォルダ名を「x86」とし、x86ディレクトリからアセンブリを追加します。
Oracle.ManagedDataAccessDTC.dll
を追加する場合と同じ手順に従います。
Oracle.ManagedDataAccessDTC.dll
かOracle.ManagedDataAccessIOP.dll
、またはその両方に依存する場合でもアプリケーションをプラットフォーム非依存にするには、x64とx86の両方のフォルダを作成し、そこにアセンブリを追加します。
2.5.2 インストール後のファイルの場所
Oracle Universal Installerベースのインストールの場合、Oracle.ManagedDataAccess.dll
アセンブリは次の場所にインストールされます。
.NET Framework 4:
ORACLE_BASE
\
ORACLE_HOME
\
odp.net\managed\common
ディレクトリ
ドキュメントおよびreadme.txt
ファイルには、Oracle Universal Installerを使用して実行されるODACインストールのORACLE_BASE
\
ORACLE_HOME
\
ODACDoc\DocumentationLibrary\doc\index.htm
からアクセスできます。Oracle Developer Tools for Visual Studioがインストールされている場合、OracleドキュメントはVisual Studio自体にインストールされます。
サンプルは、Oracle Universal Installerを使用して実行されるODACインストールのORACLE_BASE
\
ORACLE_HOME
\
ODACsamples
ディレクトリ、または通常ODAC MSIインストールのC:\Program Files (x86)
にあるOracle Developer Tools for Visual Studioサブディレクトリにあります。