-2

我们的应用程序当前使用 SQL Server CE 3.5 在 X86 模式下运行。我需要切换到 ANYCPU 模式。我尝试升级 SQL Server CE 4.0,因为我听说 SQL Server CE 3.5 不支持 ANYCPU。已将我的项目更改为 ANYCPU,但在尝试打开 SQL Server Compact 文件时出现以下错误。请帮忙。

无法加载与版本 8080 的 ADO.NET 提供程序对应的 SQL Server Compact 的本机组件。安装正确版本的 SQL Server Compact。有关详细信息,请参阅知识库文章 974247。

无法加载 DLL 'sqlceme35.dll':找不到指定的模块。(来自 HRESULT 的异常:0x8007007E)

4

1 回答 1

0

我必须升级我当前的 SQL Server Compact 文件以在 SQL Server Compact 4.0 版中使用。所以我使用以下代码将 SQL Server Compact 3.5 版文件升级到 4.0。

public static void Upgrade(string fileName, string password)
    {
        if (String.IsNullOrEmpty(fileName) || password == null)
            throw new Exception("Unable to create connection string because filename or password was not defined");

        try
        {
            var connectionString = string.Format(@"Data source={0};Password={1}", fileName, password);
            var engine = new SqlCeEngine(connectionString);
            engine.Upgrade();
        }
        catch (Exception ex)
        {
            throw (ex);
        }
    }

需要允许 SQL Server Compact 4.0 与实体框架一起使用。要安装 EntityFramework.SqlServerCompact,请在包管理器控制台中运行以下命令

安装包 EntityFramework.SqlServerCompact -版本 4.1.8482.2

于 2017-03-21T22:02:07.470 回答