4

ASP.NETMVCプロジェクトでOracleXEDBを使用したい。VSが実行されているのと同じマシンにOracle11gXEをインストールしました。C:\oraclexeでインストールが正常に完了しました。予想通り、デフォルトの.NET oracleデータアクセスプロバイダーを使用して、サーバーエクスプローラー経由でDBに接続できました。しかし、ODP.NETを使用したいので、ODP.NET + ODTをC:\appにインストールしました。これが最初の紛らわしいことです。C:\ oraclexe .. \ serverとC:\ app ..\client_1のディレクトリ構造は似ています。どちらにも、Tnsnames.oraが存在するNETWORK\ADMINフォルダーがあります。クライアントがデータベースへの接続に使用されていることを理解していますが、次のようになります。

  1. データベースへの接続に使用されるTnsname.oraはどれですか?
  2. Oraclexeには、Oracle.DataAccess.dllが存在するodp.netフォルダも含まれています。サーバーのインストールにodp.netが付属している場合、なぜODACをインストールする必要があるのですか?VSのサーバーエクスプローラーは、ODACのインストール後にのみ接続用のODP.NETドライバーを提供してくれました。
  3. ODACにはOracleInstantClientが付属しています。OracleClientを使用する場合とOracleInstantClientを使用する場合 Oracle Clientを選択してから、接続用にODACをインストールする場合、ODACの一部であるInstant Clientもインストールされますか?
  4. 最後に、サーバーとクライアントをインストールした後も、VS2010はASP.NET構成でOracleプロバイダーを提供しません
4

1 に答える 1

2

Oracle XEは、通常、サーバーとクライアントを同じマシンにインストールするという点で、ちょっと特別です。論理的には、それらは別々ですが、それは物事を理解するのを少し難しくします。そのため、他の専門家を紹介します。

  1. ORAFAQの人々は、TNSNAMES.ORAファイルに関する情報を持っています。私の個人的な戦略は、すべてのTNSNAMES.ORAファイルを同じにすることです。そのため、混乱する機会はありません。

  2. ODP.NETは....NET使用するためのものですが、ODACは「ネイティブ」(OLE)であり、ODP.NETだけで使用できるよりも多くのツールを提供します。ニーズに合ったものを使用してください。

  3. ほとんどの場合、インスタントクライアントを配布します。フルクライアントは、開発者にとってより便利です。詳細については、ドキュメントFAQを参照してください。1台のマシンに複数のクライアントを置くことができるので、何が問題なのかわかりません。

  4. マシンを再起動しますか?適切なライブラリを環境に追加しましたか?

于 2012-02-09T22:31:46.940 に答える