csharp 3.0
TRANSCRIPT
Volkan AtaseverMicrosoft Akademik Editörü
Developer
C# 3.0 ve LINQ
C# 2.0’ın C# 3.0’ı Etkileyen Özelliklerine Kısmen Değinilecektir.
AMAÇ
Bilgi işlemeyi kolaylaştırmak!Object (Nesneler)Database (SQL/Oracle)XML(data!=objects)
C# 3.0 Gelişim süreci ve Relase
Implicitly typed local variables Extension methods Lambda expressions Expression trees Object and collection initializers Anonymous types Query expressions
var i = 5; var s = “Deneme"; var d = 1.0; var numbers = new int[] {1, 2,
3}; var orders = new
Dictionary<int,Order>();
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>();
var x; // Hata, ilk deger atanmamış
var y = {1, 2, 3}; // Hata, koleksiyon belirtilmemis
var z = null; // Hata, null alamaz.
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
List<int> evenNumbers = list.FindAll(delegate(int i)
{ return (i%2) == 0); });
var evenNumbers = list.FindAll( i => i % 2 ==0);
veya var evenNumbers = list.FindAll(int i =>
return (i % 2 ==0) );
Func<int,int> f = x => x + 1; // Code
Expression<Func<int,int>> e = x => x + 1; // Data
var customer = new Customer{Id=1, Name =“Volkan", City=“istanbul"};
List<int> numbers = new List<int> {2,3,4,5,6};
var customer = new {Id=1, Name =“Volkan", City=“istanbul"};
from c in customers where c.City == "London" select c
DLINQ (Database Language Integrated Query)
XLINQ (Xml Language Integrated Query)
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
Database Language Integrated Queries
DLINQ Eskiden Nasıl Yapıyorduk ? Şimdiki Değişimin Etkileri Neler ? DEMO
XLINQ - XML Store and Language Integrated Query
System.Xml.Xlinq
XDocument XElement XAttribute XNode XProcessingInstruction Xtext Xnamespace Xcontainer XDocumentType XElementSequence
www.volkanatasever.com www.msakademik.net