powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / закрытие соединения при DataReader
8 сообщений из 8, страница 1 из 1
закрытие соединения при DataReader
    #32475230
DNV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
к примеру есть код:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
sub CCC(Sql)
	Dim Cmd As New SqlCommand(SQL, New SqlConnection(CnString))
	Dim R As SqlDataReader = Cmd.ExecuteReader
	....
	R.Close()
	Cmd.Dispose()
	...
	...
end sub

когда закроется соединение?
когда я делаю Cmd.Dispose или при выходе из процедуры
...
Рейтинг: 0 / 0
закрытие соединения при DataReader
    #32475409
Фотография hDrummer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хороший вопрос. Я думаю, при закрытии Cmd потеряется ссылка на объект соединения, а при выходе из процедуры освободится память, занимаемая этим объектом.
...
Рейтинг: 0 / 0
закрытие соединения при DataReader
    #32475703
DNV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
теперь вот какой вопрос.

Dim Cmd As New SqlCommand(SQL, New SqlConnection(CnString))
...
Cmd.Dispose()

при Cmd.Dispose коннект закроется или обязательно надо делать
сначала
Cmd.SelectCommand.Connection.Dispose()
а потом уж
Cmd.Dispose()

Именно так сделано в 'Duwamish'

разве при Cmd.Dispose не выполняется автоматом Cmd.SelectCommand.Connection.Dispose() ???
...
Рейтинг: 0 / 0
закрытие соединения при DataReader
    #32476376
DNV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ответьте же кто нибудь, плиз
...
Рейтинг: 0 / 0
закрытие соединения при DataReader
    #32489288
DNV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ответьте плиз на последний вопрос
...
Рейтинг: 0 / 0
закрытие соединения при DataReader
    #32493771
KnowALL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Думаю, что нет.

Когда мы пишем:

Код: plaintext
Dim Cmd As New SqlCommand(SQL, New SqlConnection(CnString)) 


сначала создается соединение, а потом объект Command.

А при удалении Cmd мы удаляем Command, а Connection остается.

Следовательно, его надо удалять. Или дождаться сборщика мусора, который освободит неиспользуемые области памяти. Правда когда именно он запустится, знает только Microsoft :)
...
Рейтинг: 0 / 0
закрытие соединения при DataReader
    #32493865
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А я вообще никогда не закрываю соединение. Правда я его отдельным компонентом создаю

-- Tygra's --
...
Рейтинг: 0 / 0
закрытие соединения при DataReader
    #32495761
Фотография EvAlex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я не вижу открытия соединения.
Насколько я знаю DataReader в отличие от DataAdapter не открывает соединение и не закрывает самостоятельно.
Выход из процедуры память тоже не очищает - .net это делает сам в том случае если считает, что процедура не будет использованна.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / закрытие соединения при DataReader
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]