C# SQL ile Listboxa Veri çekme

ygtylmz

Üyecik
lokanta otomasyonu hazırlıyorum ve sqlden listboxa veri çekmek istiyorum
private void button2_Click(object sender, EventArgs e)
{
SqlConnection connection = new SqlConnection("Data Source=YIGIT59;Initial Catalog=lokantamis;Integrated Security=True");
SqlCommand command = new SqlCommand("Select * from uruntablo", connection);
connection.Open();
SqlDataReader reader = command.ExecuteReader();
while (reader.Read())
{
listBox1.Items.Add(reader["urunfiyati"].ToString());
}
connection.Close();
}


bu kodlarla veri tabanında bulunan butun urunlerın fıyatlarını cekıyor fakat ben butona tıklandıgı zaman butonun textındeki urunun fıyatının gelmesini istiyorum lütfen yardım edermisiniz.
 
Bu kodlaar tum urunlerın fıyatını çekmez
Saan metotunu atıyım da ordan anlarsın zaten kodu yazmayayım sımdı 2 saat sansa gordum zaten acılse kodları bılıyorsundur cozersın..

oncelıkle sunu yaz bi oraya ben store prosedure ile gonderdıgım ıcın farklı gelebılır anlamadıın yerı gene sor ancak dataları okurken bir diziye atman lazım diziye atmazsan ne kadar data gelecek nerden bılıyorsun? bir tane list dizi yap dızı metodu yap hatta oraya at
aşagıdaki gibi


public datatasi[] SertifikaDurumGetir()


{
List<datatasi> SertifikaDurumlar = new List<datatasi>();
SqlConnection SqlConnection = new SqlConnection(AtlasdataBaglanti);
SqlCommand SqlCommand = SqlConnection.CreateCommand();
SqlCommand.CommandText = "SertifikaDurumGetir";
SqlCommand.CommandType = CommandType.StoredProcedure;


SqlConnection.Open();


SqlDataReader SqlDataReader = SqlCommand.ExecuteReader();


while (SqlDataReader.Read())
{
datatasi SertifikaDurum = new datatasi();

SertifikaDurum.sertDurumAdi = SqlDataReader.GetString(SqlDataReader.GetOrdinal("durumadi"));

SertifikaDurumlar.Add(SertifikaDurum);
}




SqlDataReader.Close();
SqlConnection.Close();














return SertifikaDurumlar.ToArray();

}

sonra sallıyorum verigetir.aspx dosyasını aç f7 ye bas komut satırını aç
buton_click += yap yanı buton click oldugunda de..

datatasi[] sertifikadurumtumu { get; set; }
protected void Page_Load(object sender, EventArgs e)
{
DataYoneticisi Datayonetici=new DataYoneticisi();
datatasi datatasi = new datatasi();


this.sertifikadurumtumu = Datayonetici.SertifikaDurumGetir();


for (int i = 0; i < this.sertifikadurumtumu.Length; i++)
{


drSertifika.Items.Add(sertifikadurumtumu.sertDurumAdi);
}


bundan sonrada tum veriyı burda listbox a bastıgını goreceksin sen bu sistemde katmanlı mimari kullanılmıştır.. senın sql baglantılarına tekrar bak yaptıgın sistem kolayca suistimal edilebilecek bir sistem..direk halk tabırı ile hack olacak bir sistem 1/2dkda gider ;) ok
hadı kolay gelsın
 

anamur

Asistan
while (reader.Read())
{
if(button2.text==reader["urunAdi"].toString())
{
listBox1.Items.Add(reader["urunfiyati"].ToString());
}
}

Yukarıda kod işini görür fakat, böyle yapmak pek efektif değil, sen veritabanından bütün ürünleri getiriyorusun, bu filtrelemen daha hayırlıdır.
 

ygtylmz

Üyecik
size ne kadar teşekkür etsem azdır gerçekten elinize sağlık :) 3 gundur ugrasıyorum bı turlu yapamamıstım çok teşekkür ederim :)

--- Mesaj Güncellendi ---

peki bu çektiğim verileri her veri çektiğimde label 2de toplam fıyatını yazıcak kodlar nasıl olmalı ?
 
Üst