当前位置:编程学习 > C#/ASP.NET >>

高手请进!!!

请教高手,我把begin到end之间的数字插入到数据库中正确,但会很多次“输入成功”的对话框,如何修改才能只显示一次“输入成功”???谢谢谢谢!!
int begin = int.Parse(Tb_beg.Text);
        int end = int.Parse(Tb_end.Text);
        for (int i = begin; i <= end; i++)
        {
            string id = Tb_lh.Text.ToString() + "-" + Tb_ch.Text.ToString() + "-" + i;
            try
            {
                string strsql = "Insert into stu_hostroom(寝室ID,楼号,层号,房号)";
                strsql += " values('" + id + "','" + Tb_lh.Text.ToString() + "','" + Tb_ch.Text.ToString() + "','" + i + "')";
                objcom.excsql(strsql);
                Response.Write("<script>javascript:alert('输入成功')</script>");
            }
            catch
            { Response.Write("出错了!"); }
        } --------------------编程问答--------------------       try catch以及          Response.Write(" <script> javascript:alert('输入成功') </script> "); 放到循环外面 --------------------编程问答-------------------- Response.Write(" <script> javascript:alert('输入成功') </script> "); 
在For内,肯定提示哦!

设个bol变量True/False,成功了True继续,False就退出,

在For 外面判断True/False,然后给出提示。 --------------------编程问答-------------------- 加个bool控制变量

  int begin = int.Parse(Tb_beg.Text); 
  int end = int.Parse(Tb_end.Text); 
  bool bOK = true;   //在这里加个bool型控制变量
  for (int i = begin; i  <= end; i++)   { 
    string id = Tb_lh.Text.ToString() + "-" + Tb_ch.Text.ToString() + "-" + i; 
    try { 
      string strsql = "Insert into stu_hostroom(寝室ID,楼号,层号,房号)"; 
      strsql += " values('" + id + "','" + Tb_lh.Text.ToString() + "','" + Tb_ch.Text.ToString() + "','" + i + "')"; 
      objcom.excsql(strsql); 
      bOK &= true;   //与true做一次并运算
    } catch {
      bOK &= false; //与false做一次并运算
    } 
  }

  if (bOK) {
    Response.Write(" <script> javascript:alert('输入成功') </script> "); 
  } else {
    Response.Write("出错了!"); 
  }



-----------------------------------------------------------
  爱找房(http://www.izfang.com)
 我的个人网站,个人免费的房屋租赁网站,大家要多多捧场哦。 --------------------编程问答-------------------- 简单问题 --------------------编程问答-------------------- 还有一种方法,就是把try{}catch{}放在for循环的外面。但这种方法在运行过程中一旦有一次数据库插入出错,之后的操作就不再执行了。


int begin = int.Parse(Tb_beg.Text); 
  int end = int.Parse(Tb_end.Text); 
  bool bOK = true;   //在这里加个bool型控制变量
  try { 
    for (int i = begin; i  <= end; i++)   { 
      string id = Tb_lh.Text.ToString() + "-" + Tb_ch.Text.ToString() + "-" + i; 
      string strsql = "Insert into stu_hostroom(寝室ID,楼号,层号,房号)"; 
      strsql += " values('" + id + "','" + Tb_lh.Text.ToString() + "','" + Tb_ch.Text.ToString() + "','" + i + "')"; 
      objcom.excsql(strsql); 
    }
    //只有当循环的每次操作都成功,才显示“输入成功”提示。
    Response.Write(" <script> javascript:alert('输入成功') </script> "); 
  } catch {
  //只要在循环中有一次出错,就显示“出错了”,但之后就不再执行循环里的操作了。
    Response.Write("出错了!"); 
  } 


-----------------------------------------------------------
  爱找房(http://www.izfang.com)
 我的个人网站,个人免费的房屋租赁网站,大家要多多捧场哦。 --------------------编程问答-------------------- 3楼正解。 --------------------编程问答--------------------

try 

  int begin = int.Parse(Tb_beg.Text); 
  int end = int.Parse(Tb_end.Text); 
  for (int i = begin; i  <= end; i++) 
  { 
    string id = Tb_lh.Text.ToString() + "-" + Tb_ch.Text.ToString() + "-" + i; 
    string strsql = "Insert into stu_hostroom(寝室ID,楼号,层号,房号)"; 
    strsql += " values('" + id + "','" + Tb_lh.Text.ToString() + "','" + Tb_ch.Text.ToString()   + "','" + i + "')"; 
    objcom.excsql(strsql); 
   } 
}
catch 

   Response.Write("出错了!");  return;
}
Response.Write(" <script> javascript:alert('输入成功') </script> "); 
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,