Прошло много времени с тех пор, как я использовал VB.NET, но самый безопасный способ справиться с этим в C # - это использовать выражение " using ".
Это похоже на неявный try-catch , и он гарантирует, что все ресурсы закрыты / отменены и утилизированы, когда заканчивается "использование".
using (OleDb.OleDbConnection connection = new OleDb.OleDbConnection(connectionString))
{
DoDataAccessStuff();
} // Your resource(s) are killed, disposed and all that
Обновление : Найдена ссылка о Использование оператора в VB.NET 2.0 , надеюсь, это поможет.
Using conSyBase As New OleDb.OleDbConnection("Provider=Sybase.ASEOLEDBProvider.2;Server Name=xx.xx.xx.xx;Server Port Address=5000;Initial Catalog=xxxxxxxxxx;User ID=xxxxxxxx;Password=xxxxxxxxx;"), _
cmdSyBase As New OleDb.OleDbCommand("MySQLStatement", conSyBase)
conSyBase.Open()
Dim drSyBase As OleDb.OleDbDataReader = cmdSyBase.ExecuteReader
Try
While drSyBase.Read()
'...'
End While
Catch ex As Exception
NotifyError(ex, "Read failed.")
End Try
cmdSyBase.Cancel()
End Using