有返回值的数据传参?
public bool sqltoArr(SqlConnection conn,string sql, out string[] reArr)
{
   DataSet ds = new DataSet();
   SqlDataAdapter da = new SqlDataAdapter(conn,sql);
   da.Fill(ds);
   if (ds.Tables[0].Rows.Count != 0){
	reArr = new string[ds.Tables[0].Columns.Count];
	for (int i = 0;i < ds.Tables[0].Columns.Count -1;i++)
	{
	  reArr[i] = ds.Tables[0].Rows[0][i].ToString();
	}
	return true;
	}
   else{
    reArr = new string[2]{"a","b"};
    return false;
}
}
调用:
bool istrue;
string[] reArr;
istrue = pc.sqltoArr(conn,sql,reArr);
为什么不成功 总说无法转换,请各位请点一下.
------解决方案--------------------先改成试试
istrue = pc.sqltoArr(conn,sql,out reArr);
------解决方案--------------------
------解决方案--------------------
------解决方案--------------------ref  也可以
------解决方案--------------------传递istrue = pc.sqltoArr(conn,sql,out reArr);
------解决方案--------------------应该这样,程序是能够通滴,但达到的功能是有问题滴!!
   public bool sqltoArr(SqlConnection conn, string sql,out string[]  reArr)
   {
       DataSet ds = new DataSet();
       SqlDataAdapter da = new SqlDataAdapter(sql,conn);
       da.Fill(ds);
        reArr = new string[ds.Tables[0].Columns.Count];
       if (ds.Tables[0].Rows.Count != 0)
       {
           //reArr = new string[ds.Tables[0].Columns.Count];
           for (int i = 0; i < ds.Tables[0].Columns.Count - 1; i++)
           {
               reArr[i] = ds.Tables[0].Rows[0][i].ToString();
           }
           return true;
       }
       else
       {
           //reArr = new string[3] { "a", "b" };
            for (int i = 0; i < ds.Tables[0].Columns.Count - 1; i++)
               reArr[i] = i.ToString();
           return false;
       }
   }
调用:  
bool istrue;  
string[] reArr;  
istrue = pc.sqltoArr(conn,sql,reArr);  
for (int i = 0; i < reArr.Length-1; i++)
   Response.Write(reArr[i].ToString());
------解决方案--------------------在调用上楼上少打out
应该这样,程序是能够通滴,但达到的功能是有问题滴!!  
   public bool sqltoArr(SqlConnection conn, string sql,out string[]  reArr)  
   {  
       DataSet ds = new DataSet();  
       SqlDataAdapter da = new SqlDataAdapter(sql,conn);  
       da.Fill(ds);  
       reArr = new string[ds.Tables[0].Columns.Count];  
       if (ds.Tables[0].Rows.Count != 0)  
       {  
           //reArr = new string[ds.Tables[0].Columns.Count];  
           for (int i = 0; i < ds.Tables[0].Columns.Count - 1; i++)  
           {  
               reArr[i] = ds.Tables[0].Rows[0][i].ToString();  
           }  
           return true;  
       }  
       else  
       {  
           //reArr = new string[3] { "a", "b" };  
           for (int i = 0; i < ds.Tables[0].Columns.Count - 1; i++)  
               reArr[i] = i.ToString();  
           return false;  
       }