はい!!!!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