2017-01-27 4 views
0

現在、Oracle Databaseと対話するためにEntity Frameworkを使用するMVCアプリケーションで作業しています。EFでプロバイダエラーを格納します

表の追加と更新を行うと、.NETで動作するために必要なすべてのOracleプロバイダーがインストールされているため、これらの操作はすべてエラーを発生させることなく行われます。

しかし、ここでは、私のアプリケーションを実行しようとしているとき(エラーなしで実行されている)、次の行が実行されるとVisual Studioでエラーが発生します。

return PartialView("_GridViewRecruitmentPartial", model.Where(e => e.NON_ACTIVE != 1).OrderByDescending(e => e.EMPL_ID).ToList()); 

エラーメッセージ:

指定ストアプロバイダは、構成中に見出すことができない、または は有効ではありません。

と内側のメッセージ:要求された.NET Frameworkのデータプロバイダを見つけることができません

。それはありません がインストールされている

私はEFとOracleに何か問題があることを知っていますが、何も見えません。さらに、私はそれらの2つを使っている他のプロジェクトもたくさんあり、すべてうまくいった。

+0

あなたがどこよりも別の場所にアプリをデプロイした後に発生するエラーについて話していますそれを開発しましたか?その場合は、EFにODP.NETについて知らせるために必要な設定ファイルの更新が必要です。これらは、ODP.NET Entity Framework NugetパッケージまたはODP.NETインストーラベースのインストールによって自動的に処理されます(後者の場合は、ターゲットマシン上でインストーラを実行するか、自分で設定を更新する必要があります)。何が起こっているのか、あなたが使っている正確なodp.netパッケージ、Nugetなどを確認してください。 –

答えて

1

データアクセスに何を使用しているのかよくわかりません。複数のOracleプロバイダがあります...とにかく、おそらく公式Oracle Managed driverをNugetから使用するべきです。

あなたはNugetからそれをインストールすると、すべてが動作しますので、それはあなたのweb.configファイルに自分自身を追加する必要があります。..

<entityFramework> 
    <providers> 
     <provider invariantName="Oracle.ManagedDataAccess.Client" 
    type="Oracle.ManagedDataAccess.EntityFramework.EFOracleProviderServices, Oracle.ManagedDataAccess.EntityFramework, Version=6.121.2.0, Culture=neutral, PublicKeyToken=89b483f429c47342"/> 
    </providers> 
</entityFramework> 
関連する問題