string[] str = List.Split(new char[1] { '|' });
        for (int i = 0; i < str.Length; i++)
        {         string Re = GetRe(str[i]);//---------------------
//--------SQL话句略
//---------------------         vState.Text += i + "成功";
}
现在有二个问题:
一、想让当GetRe(str[i])抛出异常消息之后继续执行下一个“i”,不要让它停止,并且让vState.Text += i + "失败";。
二、如何让“vState.Text”动态显示执行情况,不要等到执行结速之后最一次性出来

解决方案 »

  1.   

    一、想让当GetRe(str[i])抛出异常消息之后继续执行下一个“i”,不要让它停止,并且让vState.Text += i + "失败";。答: catch里continue;这样就可以了,伪代码如下:fun()//为了问题二,这里起个名字。
    {
    string[] str = List.Split(new char[1] { '|' });
            for (int i = 0; i < str.Length; i++)
            {        try
            {
             string Re = GetRe(str[i]);//---------------------
    //--------SQL话句略
    //---------------------
             }
            catch(Exception ex)
            {
             vState.Text += i.ToString() + "失败";
             continue;
            }
            vState.Text += i.ToString()  + "成功";
    }
    }
    二、如何让“vState.Text”动态显示执行情况,不要等到执行结速之后最一次性出来 答:多线程。把fun()放到子线程里,多线程如果不会就自己学一下,没什么难的。
    这里唯一要注意的是vState在子线程里不可以直接使用,要使用invoke或者代理。
    做一下就明白了。
      

  2.   

    1. for (int i = 0; i < str.Length; i++) {
                try {
                    string Re = GetRe(str[i]);
                    //---------------------
                    //--------SQL话句略
                    //---------------------
                    vState.Text += i + "成功";
                } catch (Exception) {
                    vState.Text += i + "失败";
                }
            }
      

  3.   

    try
    {
     string Re = GetRe(str[i]);
    vState.Text += i + "成功";}catch(Exception ex)
    {
    vState.Text += i + "成功";}
      

  4.   

    try catch啊!~第二点挺难 js做还差不多
      

  5.   

    1.
    string[] str = List.Split(new char[1] { '|' });
            for (int i = 0; i < str.Length; i++)
            {         try
             {
              string Re = GetRe(str[i]);
             }
             catch
             {
               vState.Text += i + "失败";
               continue;
             }
    //---------------------
    //--------SQL话句略
    //---------------------         vState.Text += i + "成功";
    }
      

  6.   

    一、你用try...catch
    二、用ajax请求,返回执行的结果
      

  7.   

    额我想成c/s的了b/s要异步调用,要用ajax,用我说的这样也能做,不过效果不好。
      

  8.   


    ajax 弄起来好象过于复杂,要实现这个效果,要求每提交一条就要还回一次。还有个问题:ajax在后台提交之后,其返回值能在前台即时显现吗?有没有更简单的方法呢?