我们的WPF桌面应用程序在启动时会从云中的服务器下载一些图像。 由于下载需要一些时间(最多一分钟),并且映像很少更改,因此我想将它们缓存到用户的磁盘上,以免在以后的启动中加载它们。
将它们放在哪里合适的位置?这些文件可能会保存很长一段时间(几年),但是如果删除了文件,则启动公司会再次下载它们。
我考虑过的选项是将它们放在TEMP文件夹(我从Path.GetTempPath()
获得的路径)或IsolatedStorage
中。我不知道哪种方法最好,或者是否有更好的选择。
答案 0 :(得分:3)
如果我只希望登录的用户访问图片,我会选择ApplicationData:
您可以这样访问它:
Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "AppName", "Images");
如果我希望所有用户都可以通过这台机器访问图片,我将选择CommonApplicationData:
您可以这样访问它:
Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData), "AppName", "Images");