我創建了以下方法:如何在呼叫者與他們結束後關閉連接?
public System.Data.OleDb.OleDbDataReader GetReader(string sqlQuery)
{
System.Data.OleDb.OleDbConnection myConnection = new System.Data.OleDb.OleDbConnection();
LoadConnectionStrings();
myConnection.ConnectionString = ConnectionString;
myConnection.Open();
System.Data.OleDb.OleDbCommand myCommand = new System.Data.OleDb.OleDbCommand(sqlQuery, myConnection);
System.Data.OleDb.OleDbDataReader myReader = null;
myReader = myCommand.ExecuteReader();
return myReader;
}
代碼千行依賴於它,我想我是不是真的想,當我實現了它......
無論如何,。如果我以這種方式檢索閱讀器,我無法關閉連接,並且如果在閱讀器調用read()方法之前關閉連接,它將在閱讀並說與數據庫的連接需要時爆炸被打開。
問題是,我如何關閉以前代碼體的連接?或者所有的連接一般也許..
從我讀的here如果你沒有專門調用'close()'它不會被關閉,如果你使用的是2003訪問文件,在一個受到傷害的世界裏,你離開你的世界
爲什麼不在關閉之前關閉? – 2012-03-16 16:49:42
@Dor因爲它沒有消耗任何數據在這一點上 – 2012-03-16 16:50:20
不幸的是,你不能:/ – 2012-03-16 16:51:37