在安装wpf应用程序时,全局程序集缓存中需要SqlServer.Dmf.dll

时间:2014-04-15 19:30:00

标签: sql-server wpf sql-server-2012 clickonce

我有一个wpf应用程序,可以创建一个要存档的数据库。只需在连接字符串中使用(LocalDB)/v11.0而不是.SQLExpress。如果我进入项目属性并转到发布选项卡并单击应用程序文件,我告诉它排除SQlServer.Dmf.dll但是当我发布它仍然要求该DLL。为什么是这样?我没有在我的应用程序中的任何地方使用此DLL也不认为应该要求我将其添加到我的引用。如果我安装Microsoft SQL Server 2012然后在我试图安装的机器上,那么它将工作。但是对于我正在做的事情,我不应该安装sql server 2012.我只在文件中使用本地db .mdf(以及日志)。我错过了什么吗?

1 个答案:

答案 0 :(得分:1)

Project Properties > Publish > Application Files中列出的文件由Visual Studio自动编译。您的应用程序必须要求这些DLL。如果它们尚未在计算机上注册,则将其设置为excluded将生成您描述的错误。

您应该将程序集设置为Included,或者如果这会给您的分发添加不可接受的大小开销,那么您可以转到Project Properties > Publish > Prerequisites并添加SQL Server 2012 Express LocalDB