【发布时间】:2011-09-19 20:08:41
【问题描述】:
我想在删除 OOB 应用程序时删除存储在独立存储中的文件。如何删除这些文件?
谢谢
【问题讨论】:
标签: c# silverlight c#-4.0 isolatedstorage
我想在删除 OOB 应用程序时删除存储在独立存储中的文件。如何删除这些文件?
谢谢
【问题讨论】:
标签: c# silverlight c#-4.0 isolatedstorage
好问题! This 文章描述了如何在卸载应用程序时自动执行此过程:
前面的代码使用
IsolatedStorageFile.Remove()函数 自己整理,但显然对于真正的应用程序来说,这不是 明智的做法!但是,应用程序开发人员应考虑 卸载应用程序时删除隔离存储。 不幸的是,没有简单的方法来指导您的安装人员执行 所以它必须在Installer Class中以编程方式完成, 覆盖Uninstall函数:
public override void
Uninstall(System.Collections.
IDictionary savedState)
{
IsolatedStorageFile isf =
IsolatedStorageFile.GetStore(
IsolatedStorageScope.Assembly |
IsolatedStorageScope.User,
(Type)null,
(Type)null);
isf.Remove();
base.Uninstall(savedState);
}
有关详细信息,请参阅Uninstallation 部分。
编辑:
正如 AnthonyWJones 所提到的,Silverlight 和 Desctop 应用程序隔离存储模型之间存在差异,因此我引用的文章在您的问题范围内没有太大帮助,对此感到抱歉。我发现下面的 SO 帖子说文件仍然存在,用户可以自己删除它们,我不确定是否存在其他选项,如果发现任何内容会通知您。
【讨论】: