SqlConnection myConnection = new SqlConnection();myConnection.ConnectionString = ConfigurationSettings.AppSettings["ConnectionString"];
CollectTableData(myConnection,"代表情况");======================
上面代码我将myConnection作为参数传递到CollectTableData()方法使用我想问:在CollectTableData()中调用myConnection.Close();连接是否关闭?

解决方案 »

  1.   

    SqlConnection myConnection = new SqlConnection();
    myConnection.ConnectionString = ConfigurationSettings.AppSettings["ConnectionString"];
    根本就没打开连接
    CollectTableData(myConnection,"代表情况");
    你应该在
    CollectTableData(SqlConnection Conn,string str)
    {Conn.Open();;;;
    ;;
    Conn.Close();
    }
    中作
      

  2.   

    不好意思,我说漏了,我就是先打开,再作为参数传递的myConnection.Open();CollectTableData(myConnection,"代表情况");
    {
       myConnection.Open();//再打开一次
      
       ....     myConnection.Close();
    }
    最后连接myConnection是否关闭?我这样做好象不符合规范吧?
      

  3.   

    myConnection.Open();//myConnection.Open();后利用myConnection操作数据库,但是不关闭myConnection;CollectTableData(myConnection,"代表情况");
    {
       myConnection.Open();//再打开一次
      
       ....     myConnection.Close();
    }
      

  4.   

    myConnection.Open();//myConnection.Open();后利用myConnection操作数据库,但是不关闭myConnection;CollectTableData(myConnection,"代表情况");
    {
    if (myConnection.State != System.Data.ConnectionState.Open)
       myConnection.Open();//再打开一次
      
       ....     //myConnection.Close();不要在此关闭它
    }
      

  5.   

    一般来说,已经打开是不能再打开的。。关没关闭,你自己可以测一测啊
    测一下myConnection的状态。。myConnection.State
    结果就出来了啊。。
      

  6.   

    Connection只能打开一次,
    对应写
    _conn.Open();
    try
    {}
    catch()
    {}
    finally
    {
    _conn.close();
    }
      

  7.   

    在finally里关闭
    finally
    {
        if(_conn!=null) _conn.close();
    }