【发布时间】:2010-08-26 13:27:24
【问题描述】:
我正在尝试使用 Controller.File 从我的 ASP.NET MVC 2 项目的视图中返回 FilePathResult。我是这样使用的:
return File(pdfFilePath, "application/pdf", "foo.pdf");
但是我在黄屏死机中不断收到此错误:
进程无法访问文件 [文件路径],因为它正被另一个进程使用。
当您忘记关闭文件流时通常会出现此错误,但我认为这应该由 ASP.NET MVC 框架处理。这不会发生每次,而是周期性发生。有时我得到的文件很好,但后来它就停止工作了。我在测试时使用的是开发服务器。
有什么想法吗?
【问题讨论】:
-
您是否在您提供的代码行之前访问该文件?如果是这样,您是如何访问它的?
-
@Baddie:啊,我实际上是使用 File.Open 在渲染带有下载链接的页面时获取文件的长度,并且从未关闭它。将其添加为答案,我会接受。
标签: asp.net-mvc asp.net-mvc-2 filestream