我有 .NET 4.0 应用程序,并且正在使用 ClickOnce 部署。我有几个在代码中动态下载的文件组:
ApplicationDeployment deploy = ApplicationDeployment.CurrentDeployment;
deploy.DownloadFileGroup(downloadGroupName);
有什么方法可以卸载这些组吗?
您可以从磁盘中删除属于该组的文件,
下次应用程序启动时它将继续使用该文件。
想象一下,您有一个名为 FileGroup 的文件组"GROUPA"
,其中包含一个文件somefile.txt
。
您确定执行程序集的位置并删除该文件:
if (ApplicationDeployment.IsNetworkDeployed)
{
var deployment = ApplicationDeployment.CurrentDeployment;
if (deployment.IsFileGroupDownloaded("GROUPA"))
{
var path = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
var fileToDelete = Path.Combine(path, "somefile.txt");
File.Delete(fileToDelete);
}
}
当应用程序重新启动deployment.IsFileGroupDownloaded("GROUPA")
时将返回 false
允许您在将来的某个时间再次下载 FileGroup。