【问题标题】:Create SQL Server Compact 3.5 from .net 4.5从 .net 4.5 创建 SQL Server Compact 3.5
【发布时间】:2015-01-28 11:59:36
【问题描述】:

我有一个在 net 4.5 上编译的 C# 应用程序。

我需要创建一个 SQL Server CE 3.5 数据库文件,因为它将在 Windows CE 6 设备上使用。

当我使用代码创建数据库时

SqlCeEngine en = new SqlCeEngine(connectionString);
en.CreateDatabase();

它是第 4 版,与 net compact 3.5 不兼容

如何在 net 4.5 上将 SQL Server CE 版本强制为 3.5?

【问题讨论】:

  • 您可以尝试在连接字符串中指定一个版本。可能您必须使用“Provider=Microsoft.SQLSERVER.CE.OLEDB.3.5;Data Source=myPath\myData.sdf;”见connectionstrings.com/sql-server-compact
  • 不要使用 .NET 的 OLEDB 提供程序...

标签: c# compact-framework .net-4.5 sql-server-ce-4 sql-server-ce-3.5


【解决方案1】:

您需要从项目中引用 System.Data.SqlServerCe.dll 的 3.5.1.0 版本,而不是 4.0.0.0 版本。

您可以从这里安装 3.5 SP2 桌面运行时:http://www.microsoft.com/en-us/download/details.aspx?id=5783

【讨论】:

  • @ErickEJ 我遇到了同样的问题,我已经安装了 3.5 版本,并想确定我是否从
  • 另外,我刚刚进行了 Nuget 搜索,发现了 EntityFramework.SqlServerCompact.Legacy,所以我假设而不是更改 app.config 是删除 4.0 版本并正确安装这个版本?
【解决方案2】:

我的建议是改用 SQLite。 SQL Server Compact 版本已被弃用/停止。甚至 MS 也开始推荐使用 SQLite 在 Latyer 环境中进行嵌入式开发:https://msdn.microsoft.com/en-us/library/ee486593.aspx

SQLite 数据库在桌面/服务器端和移动端之间是兼容的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多