Language Integrated Query

2,137 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,137
On SlideShare
0
From Embeds
0
Number of Embeds
1,200
Actions
Shares
0
Downloads
12
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Language Integrated Query

  1. 1. yunus emre keskin11/18/2011 yemrekeskin.com
  2. 2. Ajanda• LINQ nedir ?• .NET Framework 3.0 yenilikleri – Implicitly typed local variables – Object & Collection Initializer – Anonymous Types – Extention Methods – Lambda Expressions• LINQ Mimarisi• LINQ syntax• LINQ operatorleri• LINQ tipleri• LINQ örnek sorgular• LINQ için araçlar ve kaynaklar - özet
  3. 3. LINQ (Language Integrated Query)Dil ile Bütünleşik Sorgu• Nedir ? – C# diline entegre olmuş hafızadaki veya harici bir kaynaktaki verileri hızlı ve efektif bir şekilde sorgulayabilecek yapıların genel adıdır. – Herhangi bir nesnel kaynak üzerinden linq sorgularını yapabilmemiz için System.Data.Extentions kütüphanesinin projemize eklenmiş olması gerekiyor.
  4. 4. Imlicitly typed local variablesBilinçsizce türlendirilmiş yerel değişkenler• Nedir ? Bu değişkenler var(variable) anahtar kelimesiyle belirtilir.Değişken tipinin belirtilmesine gerek yoktur.Değişkene ilk değer tanımlanırken verilmek zorundadır.Null verilemez.• Kullanımı kolaydır.• var ve object birbirinden farklıdır.• Nasıl Tanımlanır ? var i=1; var d=1.2; var s=“linq”; var sayilar=new i[] { 1,2,3,4,5 };
  5. 5. Object & Collection InitializerNesne veya Koleksiyon Başlatıcı• Nedir ? Nesne veya koleksiyonu tanımladığımız(intance) anda aynı zamanda özelliklerini de vermemizi sağlayan bir yapıdır. Yapıcı methodu kulllanma zorunluluğumuz ortadan kalkmaktadır.
  6. 6. Anonymous Typesİsimsiz veri tipi• Nedir ? İsimsiz bir veri tipi var anahtar kelimesinin yardımıyla oluşturulur.Belirtilen özelliklerin tipleri girilen değere göre belirleniyor.
  7. 7. Extention MethodsGenişletme methodları• Nedir ? Kod içerisinde bulunan herhangi bir veri tipini yeni metotlarla genişletme amacıyla kullanılır. Static olarak belirtilmelidir
  8. 8. Lambda ExpressionLamda İfadeleri• Nedir ? Bir fonksiyondur. (not method) Belirli bir giriş değerine karşılık sonuç üretirler. Lamda operatörü => Extension methodlarla birlikte kullanılır. Linq içerisinde yer alan extention methodlarını lambda ifadeleriyle kullanarak çoğu filtreleme işlemini tek satırda yapabilirsiniz.
  9. 9. Linq Kapsamı LINQ Object & ImplicitlyAnonymous Lamda Extention Collection typed local Types expressions Methods Initliaze variables
  10. 10. Linq Mimarisi
  11. 11. NEDEN Linq ?
  12. 12. LINQ Syntaxfrom değişken in kaynakwhere şartlarorderby alan asceding (or desceding)select veri
  13. 13. Linq Operatorleri• Kısıtlama Operatörleri -> Where• Gruplama Operatörleri -> Group• Sıralama Operatörleri -> OrderBy, ThenBy, Reverse• Bölümleme Operatörleri -> Take, Skip, TakeWhile, SkipWhile• Seçme Operatörleri -> Select• Set Operatörleri -> Distinct, Union, Intersect, Except• Dönüştürme Operatörleri -> ToArray, ToList, ToDictionary, OfType• Eleman Operatörleri -> First, FirstOrDefault, ElementAt
  14. 14. Linq Tipleri• Linq ile sorgulama yapılacak veri kaynağına göre farklı şekilde isimlendirilir.• Linq To XML : Xml dosyası üzerinde linq ile işlem yapılmasınısağlayan bir sağlayıcıdır .• Linq to Twitter , Linq to Google Weather…
  15. 15. Örnek linq Sorguları
  16. 16. Örnek linq Sorguları
  17. 17. Örnek linq Sorguları
  18. 18. Linq için araçlar ve kaynaklar• Araçlar – LinqPad – LINQ to Entity Query Visualizer – PLINQO• Kitap – Cihan Yakar-Linq – Fabrice Marquerie
  19. 19. Teşekkürler ₰

×