string SqlDh = "select dh from division where kh='" + Kh + "'";//获取所有小队的队号
OracleDataReader MyRDh = MyDb.GRead(SqlDh);//返回小队队号
ArrayList ALDh = new ArrayList();//队号数组
ALDh.Add(MyRDh["dh"]);“MyRDh["dh"]”引发了“System.InvalidOperationException”类型的异常 object {System.InvalidOperationException}哪里出问题了呢?急需大家的帮助啊!

解决方案 »

  1.   

    找到错误在哪里了,还得是科班出身的人啊!我的组长来了,给我看了一眼,指出应该做如下改正!string SqlDh = "select dh from division where kh='" + Kh + "'";//获取所有小队的队号
            OracleDataReader MyRDh = MyDb.GRead(SqlDh);//返回小队队号
            ArrayList ALDh = new ArrayList();//队号数组
            while (MyRDh.Read())
            {
                ALDh.Add(MyRDh["dh"]);
            }  
      
    献丑了,给那些跟我一样的初学者引以为鉴吧!
      

  2.   

    if(MyRDh.Read())
    {
        ALDh.Add(MyRDh["dh"]);  
    }
      

  3.   

    dataReader是一次性的全部读出list中的数据,所以你要给个条件
    让DataReader一直读
    While(dr.Read())
    {
       .....
    }这样应该就可以了