Düzeltme: İş parçacığı iptal SqlCommand.ExecuteReader sırasında SqlConnection havuzu bozarsa.

ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.

319345
Bu makale arşivlenmiştir. "Olduğu gibi" sunulmaktadır ve bundan sonra güncelleştirilmeyecektir.
Belirtiler
Aşağıdaki koşullar doğruysa:
  • Birden çok iş parçacığı bir .NET uygulamasında SqlClient.SqlCommand.ExecuteReader yöntemi kullanan uzun süren bir sorguyu iptal edildi.
  • Iş parçacığı bundan sonra aynı bağlantı dizesini SqlClient.SqlCommand.ExecuteReader kullanarak veri okumaya çalışırken kullanın.
Aşağıdaki hata iletisini alıyorsunuz:
Iletisi: Yok zaten öncelikle kapatılması gereken bu bağlantısı ile ilişkili açık bir DataReader.
Çağrı yığını gibi görünebilir:
at System.Data.SqlClient.SqlCommand.ValidateCommand(String method, Boolean executing)   at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream)   at System.Data.SqlClient.SqlCommand.ExecuteReader()					
Neden
DataReader nesnesiyle etkileşim kurduğunda iş parçacığı durduruldu, temizleme kodunu içeren SqlClient.SqlConnection.Close yöntemi olarak adlandırılır, çünkü bağlantı düzgün temizlenecek edemiyor. Bu bağlantı, bir belirsiz durumda bırakır ve sonuçta kullanılamaz bir duruma girmek bağlantı havuzu neden olur.
Çözüm
Bu sorunu gidermek için <a0></a0>, Microsoft .NET Framework için en son hizmet paketini edinin. Daha fazla bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
318836En son .NET Framework hizmet paketi nasıl elde edilir
Bu düzeltmenin ingilizce sürümünde aşağıdaki dosya öznitelikleri olmalı veya daha yenisi:
   Date            Version                                 Size              File name        --------------------------------------------------------------------   05-Mar-2002     1.0.3705.211    1,175,552 bytes   System.data.dll   29-Jan-2002                                  1,831,936 bytes   NDP10U318609.msp				

Durum
Microsoft, bu makalenin başında listelenen Microsoft ürünlerinde bir sorun olduğunu onaylamıştır. Bu sorun, ilk olarak Microsoft .NET'te düzeltilmiştir Framework Service Pack 2 (SP2).
SQL özel durumu havuzu adonet bağlantı

Uyarı: Bu makalenin çevirisi otomatik olarak yapılmıştır

Özellikler

Makale No: 319345 - Son İnceleme: 02/10/2014 09:36:04 - Düzeltme: 5.1

  • Microsoft ADO.NET 1.0
  • kbnosurvey kbarchive kbmt kbhotfixserver kbqfe kbbug kbfix kbnetframe100presp2fix kbnetframe100sp2fix KB319345 KbMttr
Geri bildirim