it will not be executed, but you should doHzcn.Open();
OracleCommand cmd=new OracleCommand(sql,Hzcn);
OracleDataReader rd=null;
rd=cmd.ExecuteReader(CommandBehavior.CloseConnection);
return rd;when you call rd.Close() in the other method, Hzcn will be closed automatically

解决方案 »

  1.   

    可以这么试:
    OracleDataReader rd=你的类函数;OracleConnection Hzcn=new OracleConnection(Str);Hzcn.Open();如果程序提示你的 数据库连接 已经处于 "Open"状态。
    那么就是没有关闭。
    反之,我就不说了……
      

  2.   

    思归大侠的方法可行,可我还是想知道上诉函数返回的时候,连接是否会自动关闭?xrascal兄:
       我按你的方法试了一下,可以open,但是我想两个Hzcn定义的地方是不同的,一个在类
    里定义,一个是在调用类的过程里定义,所以我觉得肯定是可以打开的.而且打开是
    两个不同的连接.
      

  3.   

    >>>我还是想知道上诉函数返回的时候,连接是否会自动关闭?
    NO