我有一个wpf应用程序,可以创建一个要存档的数据库。只需在连接字符串中使用(LocalDB)/v11.0而不是.SQLExpress。如果我进入项目属性并转到发布选项卡并单击应用程序文件,我告诉它排除SQlServer.Dmf.dll但是当我发布它仍然要求该DLL。为什么是这样?我没有在我的应用程序中的任何地方使用此DLL也不认为应该要求我将其添加到我的引用。如果我安装Microsoft SQL Server 2012然后在我试图安装的机器上,那么它将工作。但是对于我正在做的事情,我不应该安装sql server 2012.我只在文件中使用本地db .mdf(以及日志)。我错过了什么吗?
答案 0 :(得分:1)
Project Properties > Publish > Application Files
中列出的文件由Visual Studio自动编译。您的应用程序必须要求这些DLL。如果它们尚未在计算机上注册,则将其设置为excluded
将生成您描述的错误。
您应该将程序集设置为Included
,或者如果这会给您的分发添加不可接受的大小开销,那么您可以转到Project Properties > Publish > Prerequisites
并添加SQL Server 2012 Express LocalDB