【发布时间】:2011-02-22 18:35:21
【问题描述】:
我有一个在 IIS 7.5 中运行的 ASP.NET,它在本地文件系统上创建文件,然后在创建和删除之间执行一些逻辑后尝试删除。我遇到了一种情况,尽管删除失败并出现诸如“进程无法访问文件'C:...\Uploads\c1fe593f-85de-4de1-b5d1-7239e1fc0648_Tulips.jpg'之类的响应,因为它正在被使用由另一个进程。'" 该文件似乎被 IIS 锁定,我无法删除它。下面是创建和删除的代码示例:
// File.WriteAllBytes(path, rawData); // this seems to leave the file open!
using (var file = File.Create(path))
{
file.Write(rawData, 0, rawData.Length);
file.Close(); // should close when it goes out of scope, but just to be safe
}
我需要将一些特殊选项传递给 File.Create 吗?我该如何解决这个问题?
【问题讨论】:
-
原来我很笨。我忘了清理另一个可以处理它的资源。我的错。