昨日、PCをWindows7からWindows8に「アップグレード」したので、現在はVisual Studio 2012を使用しており、VisualStudio2010プロジェクトを開いています。
このプロジェクトは常に正常に機能しましたが、Visual Studio 2012では機能しません。奇妙なエラーが発生しましたが、修正しました。今、私はただ修正することができず、Googleで何も見つけることができないという1つのエラーが残っています:
この例外が発生します:
Database.DefaultConnectionFactoryを、アプリケーション構成で指定されている「System.Data.Entity.Infrastructure.SqlConnectionFactory、EntityFramework」タイプのインスタンスに設定できませんでした。詳細については、内部例外を参照してください。
次の内部例外がある場合:
タイプ'System.Data.Entity.Infrastructure.SqlConnectionFactory'のコンストラクターが見つかりません。
私のWeb.Configはかなり標準的に見えます:
<connectionStrings>
<add name="DefaultConnection" connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=aspnet-WebUI-201253192737;Integrated Security=True" providerName="System.Data.SqlClient" />
</connectionStrings>
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework">
<parameters>
<parameter value="Data Source=.\SQLEXPRESS; Integrated Security=True; MultipleActiveResultSets=True" />
</parameters>
</defaultConnectionFactory>
</entityFramework>
SqlConnectionFactoryクラスが存在し、2つのコンストラクターがあります(1つはパラメーターなし、もう1つは接続文字列を取ります)。C#コードでSqlConnectionFactoryを作成して、これをテストしました。
Entity Frameworkを削除して再インストールしましたが、問題は解決しませんでした。
SQL Server2012+ツールとIISExpressでEntityFramework5.0 RC(前述のようにVS2010で正常に機能しました)を使用しています。