日期:2014-05-19  浏览次数:20922 次

离开当前方法之前必须对out 参数赋值?怎么回事?急死了
public   DataSet   GetAll(out   ArrayList   codeList)
                {
                        //单据号列表
                        codeList.Add( "NoVoucher ");
                        StringBuilder   sqlCode   =   new   StringBuilder();
                        sqlCode.Append( "select   OrderCode   from   OrderVoucher ");
                        DataSet   dsCode   =   DbHelperSQL.Query(sqlCode.ToString());
                        if   (dsCode.Tables[0].Rows.Count   >   0)
                        {
                                codeList.Clear();
                                foreach   (DataRow   row   in   dsCode.Tables[0].Rows)
                                {
                                        codeList.Add(row[ "OrderCode "].ToString());
                                }
                        }
//后面还有代码是填充返回的DataSet
}

------解决方案--------------------
ArrayList 是引用,为什么要out??

你不用out,如果在方法里面改变了ArrayList 的值
方法外面也会改变的~~~~
------解决方案--------------------
服了lz了。
第一句之前加上codeList = new ArrayList()吧。