如题,从oracle数据库提取出一串数据string str="select data from test"
将结果存到一个一维数组中,string[] arr=new string[]{str};
现在写一个循环,遍历一维数组中每一个数据,
for(int i=0;i<=arr.length;i++)
{webservice.ServiceSoapClient ws = new webservice.ServiceSoapClient();
string aa= ws.sendtask("first","second","arr[i]");}
接口方法,first和second参数均是固定的,第三个参数arr[i]需要一一提取,每做完一次sendtask,会返回一个字符串,最后要求返回该字符串的数据集,请问应该怎么做

解决方案 »

  1.   

    string aa = "";
    webservice.ServiceSoapClient ws = new webservice.ServiceSoapClient();
    for(int i = 0;i <= arr.length; i++)
    {
        aa += ws.sendtask("first", "second", arr[i]);
    }
      

  2.   

    要求返回该字符串的数据集?是要在循环外面定义一个数组或者list保存吗?
      

  3.   


    string str="select distinct data||'/abc' as a from test";
    string[] arr=new string[]{str};
    这样存入一维数组中会报语法错误,而且调试看到arr[i]的值为select distinct data||'/abc' as a from test另外,
    ws.sendtask("first", "second", arr[0]);返回一个值aa;
    ws.sendtask("first", "second", arr[1]);再返回一个aa;
    ……
    ws.sendtask("first", "second", arr[i]);;返回最后一个aa;
    需要在for循环外把这些个aa的值返回给该方法
      

  4.   

    对,要在循环外面定义一个list或者数组保存,完了之后供下个方法调用
      

  5.   

    List<string> list = new List<String>();
    for(int i=0;i<=arr.length;i++)
    {webservice.ServiceSoapClient ws = new webservice.ServiceSoapClient();
    string aa= ws.sendtask("first","second",arr[i]);
    list.Add(aa);
    }
    //to do...
      

  6.   

    不要在循环里反复实例化一个不变的对象...
    var list = new List<String>();
    var ws = new webservice.ServiceSoapClient();
    Array.ForEach<string>(arr, s=>{list.Add(ws.sendtask("first","second",s));
    });
      

  7.   

    尤其是WebService Client这种开销非常大的对象...
      

  8.   

    能否完整的写一下?
    因为我的一开始的句子就有问题
    string str="select distinct data||'/abc' as a from test";
    string[] arr=new string[]{str};
    这样存入一维数组中会报语法错误
    所以能完整的写一下吗?
    public string method1()
    {
    请补充,谢谢}
      

  9.   

    数组定义方法,慢慢看不要着急,一步一步来:)http://blog.csdn.net/sjy2007/archive/2007/01/07/1476583.aspx