使用C#在asp.net中删除文件?

问题描述:

当我在解决方案资源管理器中保存文档文件时,通过邮件发送该文档文件,然后我想删除文档文件。它发出这样的错误:process being used by another process使用C#在asp.net中删除文件?

下面请找我的代码:

protected void btnsubmit_Click(object sender, EventArgs e) 
    {   
     if (Label1.Text == txtverifytxt.Text) 
     { 
      if (rdoSevice.SelectedItem.Value == "1") 
      { 
       PackageType = ddlindPackages.SelectedItem.Text; 
      } 
      else if (rdoSevice.SelectedItem.Value == "2") 
      { 
       PackageType = ddlCorpPack.SelectedItem.Text; 
      } 
      if (ResumeUpload.PostedFile != null) 
      { 

       HttpPostedFile ulFile = ResumeUpload.PostedFile; 
       string file = ulFile.FileName.ToString(); 
       FileInfo fi = new FileInfo(file); 

       string ext = fi.Extension.ToUpper(); 
       if (ext == ".DOC" || ext == ".DOCX") 
       { 
        int nFileLen = ulFile.ContentLength; 
        if (nFileLen > 0) 
        { 
         strFileName = Path.GetFileName(ResumeUpload.PostedFile.FileName); 
         strFileName = Page.MapPath("") + "\\Attachments\\" + strFileName; 
         ResumeUpload.PostedFile.SaveAs(strFileName); 
        } 
        sendingmail(); 
        FileInfo fi1 = new FileInfo(strFileName); 
        ResumeUpload.FileContent.Dispose(); 
        Label2.Visible = true; 
        Label2.Text = "Request sent sucessfully"; 
        fi1.Delete(); 
        //if (File.Exists(strFileName)) 
        //{ 
        // File.Delete(strFileName); 
        //} 
        ClearAll(tblOrdernow); 
        //Response.Redirect("CheckOut.aspx"); 
       } 
       else 
       { 
        Label2.Visible = true; 
        Label2.Text = "Upload only word documents.."; 
       } 
      } 
      else 
      { 
       Label2.Visible = true; 
       Label2.Text = "Do not upload empty document.."; 
      } 
     } 
     else 
     { 

      Label2.Visible = true; 
      Label2.Text = "Verify Image not Matched"; 
      Label1.Text = ran(); 

     } 
    } 

最可能的原因是您创建从

ResumeUpload.PostedFile.SaveAs 

尚未关闭的流。你可以尝试通过处理或关闭流来强制它。 HttpPostedFile有您可以使用此的InputStream属性:

的InputStream
获取一个流对象 指向上传的文件读取文件的内容准备 。

+0

Mr.Chris小号ResumeUpload.PostedFile我得到这个唯一的,我没有得到处理或接近我想这感谢响应 – 2010-01-18 11:33:59

+0

我已经更新了问题 – 2010-01-18 11:41:13

+0

对不起Mr.Chris就是我没有下架 – 2010-01-18 11:46:18