错误信息:
该进程无法访问文件“C:\SampleProjectName\mytestcsv.csv”,因为它正被另一个进程使用。
我正在尝试使用 fileupload(文件上传)控件读取 asp/VB.net 中的大量文件(CSV、XML、HTML)。
我正在使用 Server.MapPath 保存文件,以便可以在另一个过程中处理该文件。这很奇怪,但有时我可以一遍又一遍地浏览和上传同一个文件而没有问题,但有时它会立即失败。
我发现我最终可以杀死 WebDev.WebServer40.exe 它释放任何存在的锁。这很烦人,但对我的调试来说很好……但对最终用户来说是不可接受的。
我的文件上传代码:
If fuImport.HasFile Then
If (System.IO.File.Exists(Server.MapPath("myhtml.html"))) Then
System.IO.File.Delete(Server.MapPath("myhtml.html"))
End If
Dim dtFromHTML As New Data.DataTable
Dim dtFromSQL As New Data.DataTable
Try
fuImport.SaveAs(Server.MapPath("mytestcsv.csv"))
'Process data here
ProcessCSVData(Server.MapPath("mytestcsv.csv"))
Catch ex As Exception
Response.Write("error: " & ex.Message)
Finally
fuImport.PostedFile.InputStream.Flush()
fuImport.PostedFile.InputStream.Close()
fuImport.FileContent.Dispose()
End Try
'Other things happen here
Else
Response.Write("no file...")
End If
任何想法,将不胜感激。