刚刚做了一个主细表,就是别左边用户列表,右边显示该用户的资料,并可以修改,删除等常规操作,刚刚发现一个问题,
在填充左侧LISTBOX时,while OleDbDataReader.reload后就将OleDbDataReader释放掉了,这时候没有释放OleDbCommand的connection属性,
问题出来了,如果关闭该窗口,再次打开,提示我“连接未关闭。连接的当前状态为已打开。”,因为没有释放它,
但是我在窗口的private void user_close(object sender, FormClosingEventArgs e)函数中却讯问不到OleDbCommand的connection?也就是说,无法OnClose时关闭connection,这可怎么办呀,
我在何时应该关闭它~我现在的做法是,填充完LISTBOX后,关闭READER,关闭CONN
在listBox1_SelectedIndexChanged事件后,
重新建立READER和CONN,填充用户详细资料,之后再关闭READER,CONN
就是说,每次SelectedIndexChanged都会建立READER和CONN,用户没事儿点着看看就会产生无数次的“建立READER和CONN”,,,汗。
我感觉这样做法不是不科学不合理,而是很不科学很不合理,求高手指导,