film izle
25 Ağustos 2019, Pazar
Ana Sayfa / Programlama / Asp.Net / Bu Command ile ilişkili, öncelikle kapatılması gereken açık bir DataReader zaten var. hatası
.net mail gönder
.net mail gönder

Bu Command ile ilişkili, öncelikle kapatılması gereken açık bir DataReader zaten var. hatası

Bu Command ile ilişkili, öncelikle kapatılması gereken açık bir DataReader zaten var. hatasının çözümü aşağıdadır.

Bu Command ile ilişkili, öncelikle kapatılması gereken açık bir DataReader zaten var.

Açıklama: Geçerli web isteği yürütülürken işlenmemiş özel durum oluştu. Lütfen hata ve kod içinde kaynaklandığı yer hakkında daha fazla bilgi almak için yığın izlemesini gözden geçirin. 

Özel Durum Ayrıntıları: System.InvalidOperationException: Bu Command ile ilişkili, öncelikle kapatılması gereken açık bir DataReader zaten var.

Kaynak Hatası:



Satır 391:            if (Baglanti.State != ConnectionState.Open) { Baglanti.Open(); }
Satır 392:
Satır 393:            IDataReader BolumBilgi = (IDataReader)(SqlHelper.ExecuteReader(Baglanti, CommandType.Text, "select * from tbl_bolumler where bagliOlduguYoksisBirimID =" + FakulteMyoYoksisBirimId));
Satır 394:            return BolumBilgi;
Satır 395:

Çözüm

Tek bir bağlantı üzerinden çoklu veri çekme isteğinde bulunduğunuzda bu hata ile karşılaşabilirsiniz.

Veritabanı bağlantı cümleniz içerisinde yani connection string’de MultipleActiveResultSets özelliğini true yapmalısınız.

Eğer bağlantı cümleniz web.config içerisindeyse

 <connectionStrings>
    <add name="DbContext0" connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=DB;Integrated Security=SSPI;MultipleActiveResultSets=True" providerName="System.Data.SqlClient"/>
  </connectionStrings>