我想删除OOB应用程序时存储在Isolated Storage中的文件

时间:2011-09-19 09:46:30

标签: c# silverlight c#-4.0 isolatedstorage

我想在删除OOB应用程序时删除存储在Isolated Storage中的文件。我该如何删除这些文件?

由于

1 个答案:

答案 0 :(得分:3)

好问题! 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帖子说文件仍然存在,用户可以自己删除它们,我不确定是否存在其他选项,如果发现任何内容会让你知道。

SO帖子:Isolated Storage, OOB, and Removing the App