Forum

while(dr.read) kısm...
 
Bildirimler
Hepsini Temizle

while(dr.read) kısmında hata !

4 Yazılar
3 Üyeler
0 Likes
414 Görüntüleme
(@esrakaral)
Gönderiler: 5
Active Member
Konu başlatıcı
 

public List<IlanModel> AnasayfadaAramaYap(int kategoriID, int ilID, int ilceID,int minFiyat, int maxfiyat, int OdaSayisi, int minMetrekare, int maxMetrekare)

{

object[] values = { kategoriID, ilID, ilceID, minFiyat, maxfiyat, OdaSayisi, minMetrekare, maxMetrekare };


string[] pnames = { "@kategoriID", "@ilID", "@ilceID","@minFiyat", "@maxfiyat", "@OdaSayisi", "@minMetrekare", "@maxMetrekare" };


EmlakDB db = new EmlakDB("db");


SqlDataReader dr = db.ExecuteReader("sp_anasayfaArama", true, pnames, values);


List<IlanModel> detay = new List<IlanModel>();


while (dr.Read())

{

IlanModel ilan = new IlanModel();

ilan.IlanID = dr.GetInt32(0);

ilan.IlanAdi = dr.GetString(1);

ilan.KategoriAdi = dr.GetString(2);

ilan.TipAdi = dr.GetString(3);

ilan.TurAdi = dr.GetString(4);

 

ilan.IstenilenFiyat = dr.GetDecimal(5);

ilan.Metrekare = dr.GetString(6);

ilan.KatAdi = dr.GetString(7);

ilan.OdaSayisiDegeri = dr.GetString(8);

ilan.IlanSahibiID = dr.GetInt32(9);

 

ilan.IlAdi = dr.GetString(10);

ilan.IlceAdi = dr.GetString(11);

ilan.SemtAdi = dr.GetString(12);

detay.Add(ilan);

}

dr.Close();

return detay;

}

 

while(dr.read) kısmına gelince " Conversion failed when converting the nvarchar value 'Stüdyo' to data type int." hatasını alıyorum

 

 
Gönderildi : 27/01/2013 17:29

(@GokhanDOGAN)
Gönderiler: 780
Prominent Member
 

Merhaba

aşağıdaki değerleri aldığınız get methodlarından birisi farklı veri tipi döniyor. Böyle yapmak yerine dataTable'ye alabilirsiniz verileri.

daha kısa ve veri tipleri reflect edip kendisi belirler.. 

 
Gönderildi : 27/01/2013 19:01

(@esrakaral)
Gönderiler: 5
Active Member
Konu başlatıcı
 

yalnız benim amacım bi usercontrolden aldığım bilgileri başka bi usercontrolden çağırabilmek.eğer datatable kullanırsam diğer usercontrolden bu bilgileri  nasıl çağırabilirim ?

 
Gönderildi : 28/01/2013 00:44

(@RagipUNAL)
Gönderiler: 171
Estimable Member
 

DataTable yada DataSet e doldurduğun bir veriyi bir başka kontrole rahatlıkla aktarabilirsin. List kullanmana gerek kalmaz. Direk DataTable olarak çağırabilirsin. Bu arada string gelen bir veriyi int e çeviremiyor demiş. GetInt olarak çekmeye çalışıyorsun galiba, Bu arada Get'i kullanırken IsDBNull u turner operatörü ile default değer vermen lazım. Çünkü null gelen bir değer her halükarda stringde olsa int de olsa hata fırlatacaktır.

 
Gönderildi : 04/02/2013 04:14

Paylaş: