典型的逻辑错误!

    string tableNameStr=Request.Params["delTbName"]==null?"":Request.Params["delTbName"]; 
     string id=Request.Params["id"]==null?"":Request.Params["id"];
     string IsRecord=Request.Params["RecGuid"]==null?"":Request.Params["RecGuid"];
     string sqlDel="";

     string[] recGuidAry = getSubRecStr( tableNameStr,IsRecord).Split(',');

     if( id!="")
      sqlDel="delete from  "+tableNameStr+"  where id='"+id+"'" ;

     string sqlDelSub="";
     if( IsRecord !="" )
      sqlDelSub ="delete from  "+tableNameStr+"  where ParentRecGuid ='"+ IsRecord +"'" ;

     if(  dbP.runSqlCmdText(sqlDelSub)[1] != null )
     {
      showAlertPageEdit("删除子记录失败。",true,true);
      Response.End();
     }

     if(  dbP.runSqlCmdText(sqlDel)[1] != null )
     {
      showAlertPageEdit("删除记录失败。",true,true);
      Response.End();
     }

     string s=System.Configuration.ConfigurationSettings.AppSettings.Get("attachment");
     try
     {
      if( recGuidAry.Length >1 )
      {
       for(int i=0;i<recGuidAry.Length;i++ )
       {
        if( Directory.Exists( Path.Combine(s,"attachment//"+ReGuidStr+"//"+recGuidAry[i])&&  recGuidAry[i]!="" )
        {
         Directory.Delete( Path.Combine(s,"attachment//"+ReGuidStr+"//"+recGuidAry[i]),true);
        }
       }
      }
     }
     catch
     {
      //showAlertPageEdit("附件删除失败。",true,true);
      //Response.End();
     }

     try
     {
      if( Directory.Exists( Path.Combine(s,"attachment//"+ReGuidStr+"//"+IsRecord) ) && IsRecord != ""   )
      {
       Directory.Delete( Path.Combine(s,"attachment//"+ReGuidStr+"//"+IsRecord),true);
      }
     }
     catch
     {
      showAlertPageEdit("附件删除失败。",true,true);
      Response.End();
     }
     showAlertPageEdit("删除成功。",true,true);

 

 

上面是我的一个函数中的代码,因为没有加红色的代码,而导致在我的 recGuidAry[i]   and   IsRecord 的时候我的整个文件夹都被删除了!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值