Local
Sorununuzun çözümü için birkaç noktaya dikkat etmeniz gerekecek. SQL sorgunuzdaki kolon isimlerinin doğru olması ve ListView'deki kolon isimleri ile uyumlu olması önemli. Aşağıdaki adımları takip edebilirsiniz:
SQL Sorgusu ve Kolon İsimleri:
Veritabanınızdaki gerçek kolon isimlerini kontrol edin. Sorgunuzda "Ürün_Adı" doğru olup olmadığını doğrulayın.
SQL Server Management Studio veya ilgili bir araç kullanarak veritabanınızın tablolarını ve kolon isimlerini kontrol edebilirsiniz.
ListView Kolon İsimleri:
ListView kontrolünüzdeki kolon isimlerinin ve sıralarının doğru olduğundan emin olun. Örneğin, ListView'deki kolon adının tam olarak "ÜRÜN ADI" olduğundan emin olun.
ListViewItem Kullanımı:
ListViewItem oluştururken ilk olarak ana kolon olan Text değerini ayarlamanız gerekmektedir, ardından diğer kolonları SubItems kullanarak ekleyebilirsiniz.
Aşağıda kodunuzu bu öneriler doğrultusunda düzeltilmiş halde bulabilirsiniz:
private void button1_Click_1(object sender, EventArgs e)
{
ListView1.Items.Clear();
baglan.Open();
SqlCommand komut = new SqlCommand("Select * from Sayfa1$ where Ürün_Adı like @urunAdi", baglan);
komut.Parameters.AddWithValue("@urunAdi", "%" + textBox1.Text + "%");
SqlDataReader oku = komut.ExecuteReader();
while (oku.Read())
{
ListViewItem ekle = new ListViewItem(oku["Ürün_Adı"].ToString()); // İlk kolonu burada ekle
// Eğer başka kolonlar ekleyecekseniz SubItems kullanın
// ekle.SubItems.Add(oku["Diğer_Kolon"].ToString());
ListView1.Items.Add(ekle);
}
baglan.Close();
}
Ek Notlar:
Parametre Kullanımı: SQL enjeksiyon saldırılarına karşı koruma sağlamak için SQL sorgularında parametre kullanımı önemlidir. Yukarıdaki örnekte Parameters.AddWithValue kullanarak bunu sağladık.
Veritabanı Kolon İsimleri: Veritabanı kolon isimlerinde büyük/küçük harf duyarlılığına dikkat edin. Yukarıdaki örnekte "Ürün_Adı" kolon isminin doğru olduğunu varsaydım.
ListView Kolonları: ListView'deki ilk kolonu ekle.Text ile belirledik ve diğer kolonları (varsa) SubItems ile ekledik.
NOT: YP ile cevaplanmıştır.