SQL Server CE提供程序具有不变名称' System.Data.SqlServerCe.4.0'无法加载

时间:2016-02-07 16:31:15

标签: c# .net entity-framework sql-server-ce-4

大家晚上好。我尝试在最简单的控制台应用程序中使用SQL Server Compact Edition和Entity Framework。但我得到以下例外。

  

实体框架提供程序类型   ' System.Data.Entity.SqlServerCompact.SqlCeProviderServices,   EntityFramework.SqlServerCompact'在应用程序配置中注册   具有不变名称的ADO.NET提供程序的文件   ' System.Data.SqlServerCe.4.0'无法加载。确保   使用程序集限定名称并且程序集可用   运行的应用程序。看到   http://go.microsoft.com/fwlink/?LinkId=260882了解更多信息。

所以我开始在互联网上找到答案。在谷歌搜索后,我在StackOverflow中找到了以下答案:

No Entity Framework provider found for the ADO.NET provider with invariant name 'System.Data.SqlServerCe.4.0'

我做了以下配置文件。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
    <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
  </configSections>
  <connectionStrings>
    <add name="SQLCE.DAL.BreakAwayContex" providerName="System.Data.SqlServerCe.4.0" connectionString="Data Source=D:\TestDatabase.sdf" />
  </connectionStrings>
  <entityFramework>
    <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>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlCeConnectionFactory, EntityFramework">
      <parameters>
        <parameter value="System.Data.SqlServerCe.4.0" />
      </parameters>
    </defaultConnectionFactory>
  </entityFramework>
</configuration>

但我还有这个例外。那么我该如何解决呢?非常感谢您的回答或您的设备。

度过一个愉快的夜晚。

0 个答案:

没有答案