2013-09-24 75 views
0

我试图部署一个使用定义逻辑模型的外部.dll的桌面应用程序(wpf)。在这个外部库中,模型是使用EntityFramework定义的。 在WPF应用程序,我使用SQL Server CE数据库使用此app.config信息:部署没有安装SQL Server CE错误的应用程序

<connectionStrings> 
    <add name="SomeManager" 
     connectionString="Data Source=Database/SomeDatabase-20130220200325.sdf" 
     providerName="System.Data.SqlServerCE.4.0"/> 
</connectionStrings> 

我想最终的客户端不需要安装SQL Server CE在他的机器,所以我想包括图书馆CE库到我的finall文件夹中。我知道这是可能的,因为在MSDN他们给它一个解决方案。复制finall文件夹中的SQL Server CE 4的七个文件,以及System.Data.SqlServerCE.dll文件。我这样做,但由于某种原因,应用程序仍然试图从系统中获取库,而不是从本地应用程序文件夹中获取库,所以当我在未安装SQL Server CE 4的计算机上运行应用程序时,它不会运行。

什么可以解决这个问题,我会欣赏任何想法。谢谢...

+0

在这里看到我的博客文章:HTTP:// erikej。 blogspot.dk/2011/02/using-sql-server-compact-40-with.html - 另外,请检查提供者名称拼写/封套 – ErikEJ

+0

接缝完全是我正在寻找的解决方案。请给我一个答案,我会很高兴接受它。 –

回答

2

可以包括的SQL Server Compact二进制文件与应用程序,并简单地XCOPY部署它们,详细inctructions看到我的博客帖子在这里:http://erikej.blogspot.dk/2011/02/using-sql-server-compact-40-with.html

+0

我有这个解决方案的问题,也许你可以帮助我。当我在一些机器上运行代码时,这是有效的,而在另一些机器中运行代码时不会。我从开发机器上卸载sqlserverce,当我运行调试时,在控制台中,我可以看到它从正在运行的文件夹加载库。但是当我在其他机器上运行应用程序(Windows XP 32位和Windows 7 32位)时,它不起作用。它也适用于我创建的虚拟机wirth windows 7。会是什么呢?我会欣赏这些帮助。谢谢 –

+0

是否将所有必需的文件复制为内容?在x86和AMD64文件夹中是否有正确的文件?您的项目是否以AnyCPU为目标?如果是的话,请随时给我发一个repro项目 – ErikEJ

+0

我的目标是x86。可能是这个问题? –

相关问题