SqlDataReader.Close Methode

Definition

Schließt das SqlDataReader-Objekt.

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 ()

Implementiert

Beispiele

Im folgenden Beispiel wird ein , a SqlConnectionSqlCommandund a SqlDataReader. Das Beispiel liest die Daten durch, schreibt sie in das Konsolenfenster aus. Der Code schließt dann die SqlDataReader. Die SqlConnection Wird automatisch am Ende des using Codeblocks geschlossen.

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

Hinweise

Sie müssen die Methode explizit aufrufen, wenn Sie die Close SqlDataReader zugeordnete Methode für einen anderen Zweck verwenden SqlConnection .

Die Close Methode füllt die Werte für Ausgabeparameter, Rückgabewerte und RecordsAffectederhöht die Zeit, die zum Schließen einer SqlDataReader großen oder komplexen Abfrage benötigt wird. Wenn die Rückgabewerte und die Anzahl von Datensätzen, die von einer Abfrage betroffen sind, nicht signifikant sind, kann die Zeit, die es benötigt, um die SqlDataReader Cancel Methode des zugeordneten SqlCommand Objekts zu schließen, reduziert werden, bevor Sie die Close Methode aufrufen.

Achtung

Rufen Close Sie keine Verbindung, einen DataReader oder Dispose ein anderes verwaltetes Objekt in der Finalize Methode Ihrer Klasse auf. In einem Finalizer sollten Sie nur nicht verwaltete Ressourcen freigeben, die Ihre Klasse direkt besitzt. Wenn die Klasse keine nicht verwalteten Ressourcen besitzt, definieren Sie in der Klasse keine Finalize-Methode. Weitere Informationen finden Sie unter Garbage Collection.

Gilt für:

Siehe auch