100 likes | 187 Views
Learn how Language Integrated Query (LINQ) revolutionizes data handling with relational objects, XML, and more in .NET. Simplify sorting, filtering, and querying data seamlessly within your code. Explore LINQtoSQL, LINQtoEntities, and LINQtoXML.
E N D
LINQtoSQL Silverligth Uygulamalarında LinqtoSql
LINQ 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.
<book> <title/> <author/> <year/> <price/> </book> Relational Objects XML LINQ PROJESİ .NET Language Integrated Query C# 3.0 Visual Basic 9.0 Others LINQ toSQL LINQ toEntities LINQ toXML LINQ toDataSets LINQto Objects LINQto SQL LINQ toObjects
NEDEN LINQ? • Nesne tabanlı bir ortamda büyük veri kümelerini de birer nesne haline getirebilmek • Nesneler üzerinde arama, sıralama, gruplama gibi işlemleri daha kolay yapabilmek • Bu işlemleri sadece kullanılan dil ile gerçekleştirebilme • Veritabanındaki tablolara .NET nesnesi olarak uygulama içerisinde sorgulayabilmek • XML dosyalarındaki verileri XPath ve Xquery kullanmadan, SQL ifadesi yazar gibi sorgulayabilmek • Koleksiyon ve dizi nesnelerini sorgulayabilmek • Ve bu sorgulamaları dil ile entegre şekilde oluşturabilmek • için kullanılabilir…
LINQtoSQL • .NET sınıflarını kullanarak relational database işlemleri yapabilmemize olanak sağlayan bir O/RM (object relational mapping) uygulamasıdır.
<book> <title/> <author/> <year/> <price/> </book> Relational Objects XML LINQ PROJESİ .NET Language Integrated Query C# 3.0 Visual Basic 9.0 Others LINQ toSQL LINQ toEntities LINQ toXML LINQ toDataSets LINQto Objects LINQto SQL LINQ toObjects
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… Sorguda kullanılacak değer var sayılar= from sayiin db.tabloBir where sayi> 5 select sayi Elealınacakliste (diziveyakoleksiyongibi) Seçilecekverileribelirleme (Şartbildirme, sıralama, gruplama) Sonuçta yer alacak değer
ARKADA NELER OLUYOR? db.Customers.Add(c1); c2.City = “Seattle"; db.Customers.Remove(c3); from c in db.Customers where c.City == "London" select c.CompanyName Enumerate Nesneler SubmitChanges() SQL Sorgusu Satırlar SQL Sorgusu SQL Server INSERT INTO Customer … UPDATE Customer …DELETE FROM Customer … SELECT CompanyName FROM Customer WHERE City = 'London' Uygulama LINQ to SQL
Silverlight Uygulamalarında LinqToSql • Silverlight client taraflı çalışmaktadır. Bu nedenle bu tarz uygulamalardan direkt olarak veritabanına bağlanamayız. Kullanmamız gereken veritabanına LinqtoSql ile bir web servisi yardımı sayesinde erişebiliriz. • Uygulama Örnekleri…..