我有一个代码可以从互联网上下载图像,并在本地缓存它。它还允许用户选择他自己的图像,然后将其复制到缓存并调整为代码需要。 当我尝试以编程方式清空缓存时出现问题。代码下载的所有图像都被删除得很好,但是当它试图删除用户选择的图像时,会抛出一个异常,说明我没有权限这样做。 当缓存清除发生时(它们正在被丢弃,并且垃圾收集器被强制在之后运行),不会加载图像,因此我认为由于程序打开图像而不是冲突。 什么可能导致这种行为,我该如何解决它?\
DirectoryInfo cacheDir = new DirectoryInfo(strCacheDir);
//Delete any jpeg-s in the cache dir
foreach (FileInfo file in cacheDir.GetFiles())
{
if (file.Extension == ".jpg")
{
file.Delete();
}
}