LINQ (Language Integrated Query) özellikle dil içerisinde, Sql tarzı sorgular yazabilmemizi ve bunları var olan IEnumerable<T> türevli tipler üzerinde kullanabilmemizi sağlayan bir Microsoft teknolojisidir.
LINQ
.NET Language Integrated Query.NET Language Integrated Query
C# 3.0C# 3.0C# 3.0C# 3.0 Visual Visual Basic 9.0Basic 9.0
Visual Visual Basic 9.0Basic 9.0 OthersOthersOthersOthers
LINQ PROJESİ
LINQtoSQL
.NET sınıflarını kullanarak relational database işlemleri yapabilmemize olanak sağlayan bir O/RM (object relational mapping) uygulamasıdır.
.NET Language Integrated Query.NET Language Integrated Query
C# 3.0C# 3.0C# 3.0C# 3.0 Visual Visual Basic 9.0Basic 9.0
Visual Visual Basic 9.0Basic 9.0 OthersOthersOthersOthers
LINQ PROJESİ
ESKİDEN…
SqlConnection cnn = new SqlConnection(baglanti); cnn.Open(); String komut = "SELECT * FROM tabloBir WHERE sayi>5 "; DataSet ds = new DataSet(); SqlDataAdapter da = new SqlDataAdapter(komut, cnn); da.Fill(ds, "tabloBir"); dataGridView1.DataSource = ds.Tables["tabloBir"]; cnn.Close();
ŞİMDİLERDE…
var sayılar=
from sayi in db.tabloBir
where sayi > 5
select sayi
Ele alınacak liste (dizi veya
koleksiyon gibi)
Seçilecek verileri belirleme
(Şart bildirme, sıralama, gruplama)
Sorguda kullanılacak
değer
Sonuçta yer alacak
değer
ARKADA NELER OLUYOR?
UygulamaUygulama
LINQ to LINQ to SQLSQL
from c in db.Customerswhere c.City == "London"select c.CompanyName
EnumeratEnumeratee
SELECT CompanyNameFROM CustomerWHERE City = 'London'
SQLSQLSorgusuSorgusu
SatırlarSatırlar
NesnelerNesneler
db.Customers.Add(c1);c2.City = “Seattle";db.Customers.Remove(c3);
SubmitChanges()SubmitChanges()
INSERT INTO Customer …UPDATE Customer …DELETE FROM Customer …
SQLSQLSorgusuSorgusu
Recommended