csharp 3.0

29
Volkan Atasever Microsoft Akademik Editörü Developer C# 3.0 ve LINQ

Upload: volkan-atasever

Post on 24-Jul-2015

693 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Csharp 3.0

Volkan AtaseverMicrosoft Akademik Editörü

Developer

C# 3.0 ve LINQ

Page 2: Csharp 3.0

C# 2.0’ın C# 3.0’ı Etkileyen Özelliklerine Kısmen Değinilecektir.

Page 3: Csharp 3.0

AMAÇ

Bilgi işlemeyi kolaylaştırmak!Object (Nesneler)Database (SQL/Oracle)XML(data!=objects)

Page 4: Csharp 3.0

C# 3.0 Gelişim süreci ve Relase

Page 5: Csharp 3.0

Implicitly typed local variables Extension methods Lambda expressions Expression trees Object and collection initializers Anonymous types Query expressions

Page 6: Csharp 3.0

var i = 5;            var s = “Deneme";            var d = 1.0;            var numbers = new int[] {1, 2,

3};            var orders = new

Dictionary<int,Order>();

Page 7: Csharp 3.0

int i = 5;            string s = “Deneme";            double d = 1.0;            int[] numbers = new int[] {1, 2,

3};            Dictionary<int,Order> orders =

new Dictionary<int,Order>();

Page 8: Csharp 3.0

var x;                  // Hata, ilk deger atanmamış

var y = {1, 2, 3};     // Hata, koleksiyon belirtilmemis

 var z = null;          // Hata, null alamaz.

Page 9: Csharp 3.0

Extension metodlar LINQ nun veri sorgulama anahtar kelimelerini tanımlamada kullanılır.

Extension metodlar static bir sınıf içerisinde static olarak tanımlanır ilk parametresi this anahtar sözcüğünü ve genişletilen sınıf tipinde parametre almaktadır

Page 10: Csharp 3.0

List<int> evenNumbers = list.FindAll(delegate(int i)

 { return (i%2) == 0); });

Page 11: Csharp 3.0

var evenNumbers = list.FindAll( i => i % 2 ==0);

 veya var evenNumbers = list.FindAll(int i =>

return (i % 2 ==0) );

Page 12: Csharp 3.0

Func<int,int> f = x => x + 1;                  // Code

Expression<Func<int,int>> e = x => x + 1;       // Data

Page 13: Csharp 3.0

var customer = new Customer{Id=1, Name =“Volkan", City=“istanbul"};

List<int> numbers = new List<int> {2,3,4,5,6};

Page 14: Csharp 3.0

var customer = new {Id=1, Name =“Volkan", City=“istanbul"};

Page 15: Csharp 3.0

from c in customers       where c.City == "London"       select c

Page 16: Csharp 3.0
Page 17: Csharp 3.0

DLINQ (Database Language Integrated Query)

XLINQ (Xml Language Integrated Query)

Page 18: Csharp 3.0
Page 19: Csharp 3.0
Page 20: Csharp 3.0

Kısıtlama Operatörleri (Restriction Operators) -> Where Gruplama Operatörleri (Grouping Operators) -> Group Sıralama Operatörleri (Ordering Operators) -> OrderBy, ThenBy, Reverse Bölümleme Operatörleri (Partitioning Operators) -> Take, Skip, TakeWhile,

SkipWhile Seçme Operatörleri (Projection Operators) -> Select Set Operatörleri (Set Operators) -> Distinct, Union, Intersect, Except Dönüştürme Operatörleri (Conversion Operators) -> ToArray, ToList,

ToDictionary, OfType Eleman Operatörleri (Element Operators) -> First, FirstOrDefault,

ElementAt Üretim Operatörleri (Generation Operators) -> Range, Repeat Gruplama Fonksiyonu Operatörleri (Aggregate Operators) -> Count, Sum,

Min, Max, Averaga, Fold Ölçüm Operatörleri (Quantifiers Operators) -> Any, All Çeşitli Operatöler (Miscellaneous Operators) -> Concat, EqualAll Özel Seri Operatörleri (Custom Sequence Operators) -> Combine

Page 21: Csharp 3.0
Page 22: Csharp 3.0

Database Language Integrated Queries

Page 23: Csharp 3.0

DLINQ Eskiden Nasıl Yapıyorduk ? Şimdiki Değişimin Etkileri Neler ? DEMO

Page 24: Csharp 3.0

XLINQ - XML Store and Language Integrated Query

System.Xml.Xlinq

Page 25: Csharp 3.0

XDocument XElement XAttribute XNode XProcessingInstruction Xtext Xnamespace Xcontainer XDocumentType XElementSequence

Page 26: Csharp 3.0
Page 27: Csharp 3.0
Page 28: Csharp 3.0

www.volkanatasever.com www.msakademik.net

Page 29: Csharp 3.0