SQL Server CE不兼容的数据库版本
我有一个SQL Server CE 4.0数据库( .sdf
文件),当我尝试从我的应用程序(WPF)对数据库进行查询时,我收到以下错误。
不兼容的数据库版本。 如果这是兼容文件,请运行修复。 对于其他情况,请参阅文档。 [Db version = 4000000,Requested version = 3505053,File name = \?\ C:\ Database \ ShortageReport \ MRPDatabase.sdf]
- 我已经检查过安装了SQL Server CE 4 sp1。
- 我尝试在Database.Net 4和vs2012中的连接设置中创建数据库。
- 我正在运行Windows 7 64位
- 我的连接字符串存储在
app.config
。
我正在使用SQL Server Compact Toolbox生成上下文和映射。
我的app.config
:
有任何想法吗?
添加对4.0版System.Data.SqlServerCe.dll ADO.NET提供程序的引用
然后使用SqlCeConnection
(4.0)对象初始化DataContext
类。
using (SqlCeConnection conn = new SqlCeConnection(@"Data Source=C:\projects\Chinook\Chinook40.sdf")) { using (Chinook db = new Chinook(conn)) { var list = db.Album.ToList(); if (list.Count > 0) System.Diagnostics.Debug.Print("It works!"); } }
我从以下路径更新了SqlServerCe.dll引用,并修复了它
参考路径:
C:\Program Files\Microsoft SQL Server Compact Edition\v4.0\Desktop\System.Data.SqlServerCe.dll
我发现类似的问题并卸载所有框架SQL Server Compact 3.5和SQL Server Compact 3.5 SP1我已经解决了这个问题。
干杯,