SqlDataReader.Close Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Fecha o SqlDataReader objeto.
public:
virtual void Close();
public:
override void Close();
public void Close();
public override void Close();
abstract member Close : unit -> unit
override this.Close : unit -> unit
override this.Close : unit -> unit
Public Sub Close ()
Public Overrides Sub Close ()
Implementações
Exemplos
O exemplo seguinte cria um SqlConnection, um SqlCommand, e um SqlDataReader. O exemplo lê os dados, escrevendo-os na janela da consola. O código fecha então o SqlDataReader. O SqlConnection é encerrado automaticamente no final do bloco using de código.
private static void ReadOrderData(string connectionString)
{
string queryString =
"SELECT OrderID, CustomerID FROM dbo.Orders;";
using (SqlConnection connection =
new SqlConnection(connectionString))
{
connection.Open();
using (SqlCommand command =
new SqlCommand(queryString, connection))
{
using (SqlDataReader reader = command.ExecuteReader())
{
// Call Read before accessing data.
while (reader.Read())
{
Console.WriteLine(String.Format("{0}, {1}",
reader[0], reader[1]));
}
// Call Close when done reading.
reader.Close();
}
}
}
}
Private Sub ReadOrderData(ByVal connectionString As String)
Dim queryString As String = _
"SELECT OrderID, CustomerID FROM dbo.Orders;"
Using connection As New SqlConnection(connectionString)
Dim command As New SqlCommand(queryString, connection)
connection.Open()
Dim reader As SqlDataReader = command.ExecuteReader()
' Call Read before accessing data.
While reader.Read()
Console.WriteLine(String.Format("{0}, {1}", _
reader(0), reader(1)))
End While
' Call Close when done reading.
reader.Close()
End Using
End Sub
Observações
Deve chamar explicitamente o Close método quando terminar de usar SqlDataReader o para usar o associado SqlConnection para qualquer outro fim.
O Close método preenche os valores para parâmetros de saída, valores de retorno e RecordsAffected, aumentando o tempo que demora a fechar um SqlDataReader que foi usado para processar uma consulta grande ou complexa. Quando os valores de retorno e o número de registos afetados por uma consulta não são significativos, o tempo que demora a fechar pode SqlDataReader ser reduzido chamando o Cancel método do objeto associado SqlCommand antes de chamar o Close método.
Atenção
Não ligue Close nem Dispose use uma Ligação, um DataReader ou qualquer outro objeto gerido no Finalize método da sua aula. Num finalizador, só deves libertar recursos não geridos que a tua classe possua diretamente. Se sua classe não possui recursos não gerenciados, não inclua um Finalize método em sua definição de classe. Para obter mais informações, consulte Coleta de lixo.