异常:System.ObjectDisposedException: Cannot access a closed file.
错误指向:读取流的内容语句 stream.Read(byteArr, 0, byteArr.Length);
当然,这里没有使用流来操作上传文件的,使用HttpContext.Request.Files[i].SaveAs(),也会出现这个问题。解决方案同下。
/// <summary> /// 文件上传 /// </summary> /// <param name="inputStream">上传的文件流</param> /// <param name="filePath">上传文件的保存路径</param> /// <param name="msg">错误信息</param> /// <returns></returns> public static bool SaveFile(Stream inputStream, string filePath, out string msg) { try { LogUtil.Info("文件上传操作类FileUpLoad,上传文件到服务器:SaveFile(),文件保存路径" + filePath); if (Directory.Exists(filePath)) { msg = "文件已存在"; return false; } byte[] byteArr = new byte[inputStream.Length]; Stream stream = inputStream; stream.Read(byteArr, 0, byteArr.Length); using (FileStream fs = new FileStream(filePath, FileMode.Append, FileAccess.Write)) { fs.Write(byteArr, 0, byteArr.Length); } msg = string.Empty; return true; } catch (Exception ex) { msg = ex.Message; //return false; LogUtil.Error("文件上传操作类FileUpLoad,上传文件到服务器:SaveFile()异常",ex); throw ex; } }