Bu örneğimizde Linq To SQL Classes kullanarak basit bir telefon rehberi uygulaması yapacağız. Örneğimizde Sql Server veritabanı bağlantısı kullanacağız. Form görüntüsü aşağıdaki şekilde olacaktır.
Örneğimizde “dbRehber” isimli veritabanını ve içindeki “kisiler” tablosunu kullanacağız.
Daha sonra Solution Explorer penceresinde projemizin üzerinde sağ tıklayarak “Add-New Item” diyoruz.Karşımıza çıkan pencereden LINQ to SQL Classes seçip Add diyoruz.
Projemizde Ekle, Güncelle ve Sil butonları bulunmakta. Ayrıca datagridview üzerine tıklandığında textboxlara ilgili verilerin gelmesi sağlanmaktadır. Üst tarafta bulunan textboxta ise isme göre arama işlemi yapılmaktadır. Arama işlemi textbox_changed olayında yazılmıştır.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 | using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace rehberv1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } DataClasses1DataContext db; private void Form1_Load(object sender, EventArgs e) { DataClasses1DataContext db = new DataClasses1DataContext(); dataGridView1.DataSource = db.tblKisilers; } private void textBox1_TextChanged(object sender, EventArgs e) { string aranan = textBox1.Text; var query = from k in db.tblKisilers where k.ad.Contains(aranan) select k; dataGridView1.DataSource = query; } private void button1_Click(object sender, EventArgs e) //insert { DataClasses1DataContext db = new DataClasses1DataContext(); tblKisiler yenikisi = new tblKisiler(); yenikisi.ad = textBox2.Text; yenikisi.soyad = textBox3.Text; yenikisi.telefon = textBox4.Text; db.tblKisilers.InsertOnSubmit(yenikisi); db.SubmitChanges(); dataGridView1.DataSource = db.tblKisilers; } private void button2_Click(object sender, EventArgs e) //update { db = new DataClasses1DataContext(); int sayi =Convert.ToInt32(dataGridView1.CurrentRow.Cells[0].Value.ToString()); var guncelle = db.tblKisilers.Where(w => w.id == sayi).FirstOrDefault(); guncelle.ad = textBox2.Text; guncelle.soyad = textBox3.Text; guncelle.telefon = textBox4.Text; db.SubmitChanges(); dataGridView1.DataSource = db.tblKisilers; } private void dataGridView1_CellEnter(object sender, DataGridViewCellEventArgs e) { textBox2.Text = dataGridView1.CurrentRow.Cells[1].Value.ToString(); textBox3.Text = dataGridView1.CurrentRow.Cells[2].Value.ToString(); textBox4.Text = dataGridView1.CurrentRow.Cells[3].Value.ToString(); } private void button3_Click(object sender, EventArgs e) //delete { db = new DataClasses1DataContext(); int sayi = Convert.ToInt32(dataGridView1.CurrentRow.Cells[0].Value.ToString()); var sil = db.tblKisilers.Where(w => w.id == sayi).FirstOrDefault(); db.tblKisilers.DeleteOnSubmit(sil); db.SubmitChanges(); dataGridView1.DataSource = db.tblKisilers; } } } |
merhaba. linq to sql ile ilgili yaptınız mı?
Linq to sql kullanarak il ilçe seçimi örneği
http://www.yazilimkodlama.com/programlama/c-linq-to-sql-classes-kullanarak-iliskili-tablodan-veri-cekme/
id sutununda nasıl arama yapacağız. benim arama yapacağım int türünde bir veri.
string aranan = textBox1.Text;
var query = from k in db.tblKisilers
where k.id.Contains(aranan)
select k;
dataGridView1.DataSource = query;
olarak değiştirebilirsiniz.
where k.id den sonra contains çıkmıyor.
k.id.toString().contains seklinde denermisin.
olmadı malesef. Yapmak istediğim link to sql ile combox aracılığı ile il ve ilçe seçimi. bir türlü yapamadım.
http://www.yazilimkodlama.com/c-2/c-access-iliskili-tablodan-veri-cekme-il-ilce-veritabani/ linkte bununla ilgili bir örnek var ama sanırım linq to sql ile bu işlemi yapmaya çalışıyorsunuz. Yarın gün içinde siteye eklemeye çalışacağım.
evet linq to sql ile yapmaya çalışıyorum. web te bir türlü benzer örnek bulamadım. Desteğin için çok teşekkür ederim.