Invalid attempt to read when no data is present Hatası
 

"Invalid attempt to read when no data is present." - Hatası ve Çözümü

Bu makalemde ,Asp.Net 'de proje geliştirirken Ado.Net mimarisi kullanarak veritabanı işlemlerinizi gerçekleştirirken karşılaşabileceğiniz hatalardan birisi "Invalid attempt to read when no data is present" Hatasını ve Çözümünü anlatacağım .

Hatanın sebebi  yanlış SqlDataReader   ile veritabanından veri  okuma işlemi yaptığımızda eğer Asp.Net data kontrolüne okuyorsak böyle bir hata ile karşılaşmayız zira Data Kontrolüne tüm çekilen veri okunur bu hata eğer satır okuma işlemi yapıyorsak çekilen veriden tablosundan bir satır okuyorsak bu hata ile karşılaşabiliriz.

Örneğin TextBox1'e  tablonun bir satırından MusteriAd isimli sütunu okuyalım burada satır okuması yaptığımızdan SqlDataReader kullanırken Read() metodunu kullanırız Read() metodu satır okumda kullanılmalıdır aksi takdir bu hata çıkar hemen örnek üzerinde göstereyim

SqlDataReader dr=sorgu.ExecuteReader();
TextBox1.Text=dr["MusteriAd"].ToString();

 

Bu şekilde çalıştırıldığında hata verir hatasız hali
SqlDataReader dr=sorgu.ExecuteReader();
while(dr.Read()==true)
{
TextBox1.Text=dr["MusteriAd"].ToString();
}


Bu şekilde hatasız olmuş olur. While kullanmamızın sebebi okuyabildiği sürece okusun anlamındadır.
İyi Çalışmalar .

 

Author: Engin ATALAY
Date: 15.02.2013 13:47:06
View Count: 4908
 
 

COMMENTS
 
No comments yet. Be the first to comment who you are.
 
 
 
 
 
 
 
WRITE COMMENT
 
 
Your Name :
 
 
 
E-mail :
 
 
 
Your Message :
 
 
 
 
 
 
 
This project : ASP.NET MVC , RAZOR, Entity Framework , CSS , HTML , JQUERY(2.0.2) , AJAX the C# side-tier architecture was developed with logic.
 
Yukarı Çık