SqlDataReader.Close Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
SqlDataReader Nesneyi kapatır.
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 ()
Uygulamalar
Örnekler
Aşağıdaki örnek, bir SqlConnection, SqlCommand
ve SqlDataReaderoluşturur. Örnek, konsol penceresine yazarak verileri okur. Kod daha sonra öğesini SqlDataReaderkapatır.
SqlConnection, kod bloğunun using
sonunda otomatik olarak kapatılır.
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
Açıklamalar
başka bir amaçla ilişkili SqlConnection kullanmak için kullanırken SqlDataReader yöntemini açıkça çağırmanız Close gerekir.
Close
yöntemi, çıkış parametrelerinin değerlerini doldurur, değer döndürür ve RecordsAffected
büyük veya karmaşık bir sorguyu işlemek için kullanılan bir SqlDataReader
sorguyu kapatmak için gereken süreyi artırır. Dönüş değerleri ve bir sorgudan etkilenen kayıt sayısı önemli olmadığında, yöntemini çağırmadan Close
önce ilişkili SqlCommand nesnenin Cancel yöntemini çağırarak öğesini kapatmak SqlDataReader
için gereken süre azaltılabilir.
Dikkat
Sınıfınızın yönteminde Connection, DataReader veya başka bir yönetilen nesne Finalize
çağırmayın Close
Dispose
veya çağırmayın. Sonlandırıcıda, yalnızca sınıfınızın doğrudan sahip olduğu yönetilmeyen kaynakları serbest bırakmanız gerekir. Sınıfınız yönetilmeyen kaynaklara sahip değilse, sınıf tanımınıza bir Finalize
yöntem eklemeyin. Daha fazla bilgi için bkz . Çöp Toplama.