实体框架和SQL Server压缩数据库提供程序不兼容

本文关键字:程序 不兼容 数据库 压缩 框架 SQL Server 实体 | 更新日期: 2023-09-27 18:19:51

我有实体框架6.13,并安装了EntityFramework.SqlServerCompact.6.1.3 NuGet包。

然而,当我尝试添加从数据库生成的新模型时,我会出现错误:

您的项目引用了最新版本的实体框架;但是,与此兼容的实体框架数据库提供程序找不到数据连接的版本。如果你有已安装兼容的提供程序,请确保您已重新生成项目,然后再执行此操作。否则,请退出此向导,安装兼容的提供程序,然后在执行该动作。

我安装了SQL Server CE 4.3。

app.config文件的一部分:

<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>
<connectionStrings>
    <add name="DataBaseModelContainer" 
         connectionString="metadata=res://*/DataBaseModel.csdl|res://*/DataBaseModel.ssdl|res://*/DataBaseModel.msl;provider=System.Data.SqlServerCe.4.0;provider connection string=&quot;Data Source=C:'Users'MyUser'Desktop'MyProj-master'SignalRSelfHost'ClientLocationSignalHost.sdf&quot;" 
         providerName="System.Data.EntityClient" />       
</connectionStrings>

实体框架和SQL Server压缩数据库提供程序不兼容

安装SQL Server Compact 4,0运行时MSI,安装Visual Studio的最新EF Tools,从SQL Server Compact Toolbox 连接到数据库文件