Здравствуйте, lindemann, Вы писали:
L>Я знаю, что так делать нежелательно, но все же — почему оно падает? В чем ошибка?
используй OdbcConnection
... << RSDN@Home 1.1.3 stable >>
Здравствуйте, lindemann, Вы писали:
L>~Class1()
L>{
L> cn.Close();
L>}
L>Я знаю, что так делать нежелательно, но все же — почему оно падает? В чем ошибка?
Это не деструктор в понимании C++, а финализатор. Сборщик мусора вызывает их в непредсказуемом порядке, поэтому в них можно освобождать только выделенные в этом классе unmanaged-ресурсы, не обращаясь к другим managed-объектам. Скорее всего, в данном случае финализатор OleDbConnection уже вызван, а Close пытается сделать те же действия повторно.
Overriding the Finalize Method
Implementing a Dispose Method