4

ローカル マシンで EF6 を使用する WebAPI 2 があり、完全に動作します。ソリューションを公開してサーバーにアップロードすると、次のエラーが発生します。

System.Data.Entity.Core.MetadataException: 指定されたスキーマが無効です。エラー: Database.FooModel.ssdl(2,2): エラー 0152: 不変名 'System.Data.SqlClient' を持つ ADO.NET プロバイダーの Entity Framework プロバイダーが見つかりません。アプリケーション構成ファイルの「entityFramework」セクションにプロバイダーが登録されていることを確認してください。

注:
開発マシンの修正に関する多くの投稿を目にしますが、私の問題はそれではありません。私の問題は、コードを Windows 2012 サーバーにアップロードするときに発生します。

質問: EF6 ソリューションをアップロードするときに、 SERVER
が適切な設定を取得 するようにするにはどうすればよいですか? サーバーを DotNet 4.5.1 に更新済みですが、他に何をサーバーにインストールすればよいですか?

4

2 に答える 2

7

===================================== 解決
策: 残念ながら、新しいアプリケーションを再起動する必要がありましたファイルをすばやくコピーすると、問題が解決しました。これで、サーバーは完全に動作します。パブリッシュされたファイル (前後) を見ると、新しい "EntityFramework.dll" ファイル バージョンと新しい "EntityFramework.SqlServer.dll" ファイルが bin ディレクトリにあります。また、「Microsoft.Data.Edm.dll および Microsoft.Data.OData.dll」が新しいバージョンにないことにも気付きました。

この情報が役立つかどうかはわかりません..しかし、少なくとも、新しいアプリケーションを作成でき、それが機能することはわかっています!!!

于 2013-10-25T20:37:10.677 に答える