EF6和SQL Server CE 4.0是否与64位的VS2012 Express配合使用?

时间:2014-04-25 23:08:01

标签: visual-studio-2012 sql-server-ce-4 entity-framework-6.1

当我尝试:

  1. 添加新的ADO Entity Data Model
  2. 选择EF Designer from database
  3. 选择现有数据库连接,包含连接字符串,并将其保存到app.config
  4. 不要复制/修改连接(我尝试使用副本和我项目中已有的数据库)
  5. 我收到错误

      

    您的项目引用了最新版本的Entity Framework;但是,无法为您的数据连接找到与此版本兼容的Entity Framework数据库提供程序

    我已经花了好几个小时才让这个配置无法正常工作。我使用以下内容:

    1. Windows 7 64位
    2. Visual Studio 2012 Express(C#应用程序)
    3. SQL Server Compact Edition 4.0 SP1 x64 ENU - 我无法在64位操作系统上安装32位版本。
    4. 2014年3月17日实体框架6.1.0
    5. EntityFramework.SqlServerCompact 6.1.0
    6. 我尝试过多次卸载和重新安装组件。

      我在app.config文件中有以下内容(省略了<entityFramework>部分):

      <system.data>
          <DbProviderFactories>
              <remove invariant="System.Data.SqlServerCe.4.0" />
              <add name="Microsoft SQL Server Compact Data Provider 4.0" 
                   invariant="System.Data.SqlServerCe.4.0" 
                   description=".NET Framework Data Provider for Microsoft SQL Server Compact" 
                   type="System.Data.SqlServerCe.SqlCeProviderFactory, System.Data.SqlServerCe, Version=4.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" />
          </DbProviderFactories>
      <entityFramework>
          <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlCeConnectionFactory, EntityFramework">
              <parameters>
                  <parameter value="System.Data.SqlServerCe.4.0" />
              </parameters>
          </defaultConnectionFactory>
          <providers>
              <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
              <provider invariantName="System.Data.SqlServerCe.4.0" type="System.Data.Entity.SqlServerCompact.SqlCeProviderServices, EntityFramework.SqlServerCompact" />
          </providers>
        </entityFramework>
      </system.data>
      

      我已多次重建解决方案,没有任何错误。该应用程序启动。

      我已多次重启。

      我已确认该项目未引用System.Data.Entity

      请告诉我,我错过了一些简单的事情。

0 个答案:

没有答案