我有一个应用程序,我必须在其中上传文件,并且可以选择下载这些文件。当我上传文件时,它可以正常工作,但问题在于下载选项。当我尝试下载上传文件时,它显示以下错误消息
该进程无法访问文件“[filepath]”,因为它正被另一个进程使用。
当我在说 30 分钟后尝试时,我没有收到任何错误,但是如果我上传新文件并尝试下载它,则会出现同样的错误。
下面是我的下载和上传代码。请帮我找出问题出在哪里。
上传
FileStream fileStream = File.Create(HttpContext.Current.Server.MapPath("myfile.pdf"), (int)filestream.Length);
byte[] bytesInStream = new byte[filestream.Length];
filestream.Read(bytesInStream, 0, bytesInStream.Length);
fileStream.Write(bytesInStream, 0, bytesInStream.Length);
下载
HttpContext.Current.Response.ContentType = "application/pdf";
HttpContext.Current.Response.AddHeader("content-disposition", "attachment; filename=myfile.pdf");
FileStream sourceFile = new FileStream(HttpContext.Current.Server.MapPath("myfile.pdf"), FileMode.Open);
long FileSize;
FileSize = sourceFile.Length;
byte[] getContent = new byte[(int)FileSize];
sourceFile.Read(getContent, 0, (int)sourceFile.Length);
sourceFile.Close();
HttpContext.Current.Response.BinaryWrite(getContent);
HttpContext.Current.Response.End();
看起来文件在上传后没有发布,但我不知道如何在上传后发布该文件,以免在下载时产生任何问题。