6

まず、多くの質問と多くの回答が私の問題に関連している、または同一であると認識されていることがわかりましたが、何もうまくいかないようです。

私は、SQL Server 2008 r2の新規インストールで、真新しいテンプレートMVC4 Webサイト、真新しいデータベースを持っています。データベースで aspnet_regsql を実行し、web.config で接続文字列を生成する .edmx モデルを作成したすべてのテーブルを作成しました。

<connectionStrings>
  <add name="TestEntities" connectionString="metadata=res://*/Models.Test.csdl|res://*/Models.Test.ssdl|res://*/Models.Test.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=WEBSRV\SQLEXPRESS;initial catalog=Test;persist security info=True;user id=Test;password=Test#1337;multipleactiveresultsets=True;App=EntityFramework&quot;"  providerName="System.Data.EntityClient" />
</connectionStrings>

ウェブサイトを構築するとエラーが返される Unable to find the requested .Net Framework Data Provider. It may not be installed.

<DbProviderFactories/>machine.config に自動終了はありませんVisual Studio Web ホストまたは Web サーバーの IIS でローカルに Web サイトを実行しても、同じ問題が発生します。NuGet パッケージをインストールしていません

なぜこのエラーが発生するのですか?

4

2 に答える 2

4

これは間違ったタイプの接続文字列です。これは、モデル ファースト (EDMX) タイプの接続用です。コードの最初の接続文字列が必要です。次のような標準の接続文字列を使用してみてください。

 <connectionStrings>
    <add name="MyDbContext" providerName="System.Data.SqlClient" connectionString="Data Source=(local);Initial Catalog=your_database;Integrated Security=True;Application Name=your_app_name" />
</connectionStrings>
于 2014-01-07T09:16:04.207 に答える