Entity Framework で開発していたら「System.InvalidOperationException: ADO.NET プロバイダーに、不変名が Npgsql の Entity Framework プロバイダーがありません。」というエラーがでたので、対処方法をメモしておく。
(1) エラー内容
System.InvalidOperationException: ‘ADO.NET プロバイダーに、不変名が ‘Npgsql’ の Entity Framework プロバイダーがありません。アプリケーションの構成ファイルの “entityFramework” セクションにプロバイダーが登録されていることを確認してください。詳細については、http://go.microsoft.com/fwlink/?LinkId=260882 を参照してください。’
(2) 原因
App.config(Web.config)に Provider の設定がなかった。
(3) 対策
以下のタグを追加した。
1 2 3 4 5 6 |
<entityFramework> <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" /> <providers> <provider invariantName="Npgsql" type="Npgsql.NpgsqlServices, EntityFramework6.Npgsql" /> </providers> </entityFramework> |