22

我需要将我的 SqlCE3.5 数据库更新到 4.0。

当我尝试使用新的 CE4.0 连接提供访问我的 3.5 sdf/数据库时收到以下错误消息:-

System.Data.EntityException:基础提供程序在打开时失败。---> System.Data.SqlServerCe.SqlCeInvalidDatabaseFormatException:数据库文件已由 SQL Server Compact 的早​​期版本创建。请使用 SqlCeEngine.Upgrade() 方法进行升级

有谁知道我该怎么做?显然我需要以编程方式进行,但我不确定我应该做什么/我需要添加哪些引用等。

干杯!

4

2 回答 2

14

Call System.Data.SqlServerCe.SqlCeEngine.Upgrade. See MSDN, which contains sample code.

于 2012-08-08T11:35:49.523 回答
10

当您看到此错误时,您无需升级:

数据库文件是由早期版本的 SQL Server Compact 创建的。请使用 SqlCeEngine.Upgrade() 方法进行升级。

简单地:

  1. 在解决方案资源管理器中右键单击您的项目
  2. 选择属性,转到参考选项卡
  3. 您将看到一个名为:System. Data.SqlServerCe Type/net version/4.0- 删除此项目(选择项目,然后单击此窗口底部的删除)的引用。
  4. 单击“删除”按钮左侧的“添加...”按钮
  5. 在 .NET 选项卡中,找到System.Data.SqlServerCe 3.5并添加它。
  6. 编译你的项目!

我认为这会奏效。

于 2013-03-02T22:08:42.740 回答