我正在使用ClickOnce部署Windows应用程序。但是,当我上传新版本时,它会创建一个新的安装路径,而不会重复使用第一次安装的初始路径?
我依赖于位于第一个路径中的文件夹中的自动附加数据库,因此当更新查找文件时,它找不到它,因为它正在查找新安装路径中的文件夹中?
关于如何强制ClickOnce覆盖初始安装的任何想法?我认为这是默认的ClickOnce行为,猜我错了。
/鲍勃
答案 0 :(得分:0)
将数据库文件添加到项目时,其默认Build Action
为Content
,而Application Files
页面中的Publish
设置中,发布状态为是Data File (Auto)
。
虽然您不更改项目的数据库文件,但在发布项目并安装新版本时,将使用先前版本的数据库文件。但是,如果更改项目的数据库文件,例如向其中添加一些表或某些测试数据,则使用更改的数据库文件创建的新安装将覆盖以前的版本数据库。
如果项目中的数据库文件有一些更改,则在发布和安装应用程序时,仍可访问以前版本的数据库,并将其复制到数据文件夹中名为.pre
的文件夹中。你的申请。
您可以使用以下命令找到安装的数据文件夹:
System.Deployment.Application.ApplicationDeployment.CurrentDeployment.DataDirectory
以前的版本数据库mdf和ldf文件位于数据目录下的.pre
文件夹中,如果需要,可以使用它们。