entity framework6.1.1和Npgsql 2.2.3:找不到兼容的entity framework数据库提供程序

我正在使用Visual Studio 2012 Update 4中的EntityFramework 6.1.1和npgsql 2.2.3开发项目。为此,我使用提供的安装程序安装了npgsl并安装了nuget软件包“Npgsql”和“Npgsql for Entity Framework”(和“EntityFramework”本身,当然)。

过去一切都很好:我可以成功访问我的数据库一段时间 – 直到有一天所有东西都“爆炸”。

这是事件历史:

  • 在主要代码升级后修复编译器错误我遇到了以下错误消息:
    • “无法加载npgsl.EntityFrameworkLegacy assmbly”(我既没有安装也没有引用这个程序集)
    • 一大堆“元数据文件’xxx’找不到”错误,其中’xxx’指向我自己的项目程序集
  • 我找到了可能的解决方案“元数据文件”问题 – 比如删除.suo文件,检查项目构建顺序等等。 他们都没有解决问题。 所以我从我的项目中删除了.edmx文件(以及所有自动生成的数据库访问文件)。 这修复了“元数据文件”的问题 – 当然引入了“未解析的符号”。
  • 我试图在我的项目中添加一个新的“ADO.NET实体数据模型”以重新获得数据库访问权限。 只有连接列表中没有列出的所有PostgreSQL数据库连接。 此外,我无法创建新的PostgreSQL连接,因为未列出此数据源。 虽然这不影响Visual Studio中的全局“数据连接”对话框:在这里我仍然可以访问我的PostgreSQL连接。
  • 我使用安装程序重新安装了npgsql。 现在我可以创建一个新的“ADO.NET实体数据模型”并连接到我的PostgreSQL数据库。 但是这次我收到错误消息:“ 您的项目引用了最新版本的Entity Framework;但是,找不到与此版本兼容的Entity Framework数据库提供程序 ”[…]。 这就是我现在被困住的地方。

我目前的设置是:

  • 该项目涉及以下程序集:
    • .NET 4.5的EntityFramework 6.1.1
    • EntityFramework.SqlServer 6.1.1 for .NET 4.5
    • 适用于.NET 4.5的Npgsql 2.2.3
    • 适用于.NET 4.5的Npgsql.EntityFramework 2.2.3
  • 这是我的app.config:
   
  • 我在我的machine.config(32位和64位)中都有这个:
       

在我添加新模型之前,我尝试重建我的解决方案。 但这没有帮助。

我可能错过了其他任何配置问题吗?

有谁能解释我为什么这一切都发生了?