2

12c の ODP.NET 用の新しいマネージド dll に関するコメント/情報を見ると、ClickOnce デプロイメントでそれを使用することは、「シンプルで美しい」ように見えます。

1) 管理されていないのではなく、管理されている dll を参照する 2) CopyLocal=true を設定する 3) アプリが、tnsnames.ora などのプリインストールされた Oracle クライアントの一部になるものに依存していないことを確認する

これは正しいです?(別名:今年はサンタさんが早く来ましたか?)

4

3 に答える 3

1

CopyLocal 機能を使用して、マネージド odp.net dll をアプリケーションに含めることができました。このアプリケーションを、Win 7 のみで Oracle ソフトウェアがまったくインストールされていないマシンにインストールすると、サーバー上の Oracle データベースに接続して適切に実行できました。

opd.net dll は管理されており、MSIL であり、インストールされたマシンの GAC にある必要はありません。

于 2013-09-09T16:40:04.860 に答える
0

はい!!!!Oracle.ManagedDataAccess を使用すると、ClickOnce を介して Oracle クライアント全体をデプロイできるため、別のクライアントをインストールする必要はありません。これが、通常の管理されていない ODP.NET との違いです。

1)。TNSNames.ora を参照するのではなく、すべての接続情報を接続文字列に直接入れます。例えば。

  string sEZconnect = string.Format("Data Source={0}:{1}/{2};User ID={3};Password={4};"
                                                          , databaseServerName //the server the database resides on
                                                          , "1521"             //TNSlistener port (1521 is default)
                                                          , instanceName       // the name of the database instance on the server
                                                          , userName
                                                          , password);
        OracleConnection _connection = new OracleConnection(sEZconnect);

2)。Oracle.ManagedDataAccess を参照するだけでなく、参照することによってのみ追加できる Oracle.ManagedDataAcesssDTC も参照する必要がありました。以下に 64 ビット バージョンを示します。32 ビット バージョンの Oracle.ManagedDataAcesssDTC.dll は、同じ \managed ディレクトリにあります。

ClickOnce アプリに Oracle クライアントを正常にデプロイするために必要な作業はこれだけです。App.config には何も追加されず、接続文字列が変更され、上記の 2 つの .dll が CopyLocal=true に設定されていることを確認しただけです。

ダウンロードは、次の Oracle からの「ODP.NET、マネージド ドライバー」でした。http://www.oracle.com/technetwork/database/windows/downloads/utilsoft-087491.html

ここに画像の説明を入力

于 2016-08-11T21:29:57.343 に答える