LINQ (Language Integrated Query)

Slides:



Advertisements
Benzer bir sunumlar
LINQ Language Integrated Query
Advertisements

FIRAT ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ
Nesnelerin Özellikleri. - Üye nesneler - friend belirtesi - Nesnelerin operatörlere yüklenmesi - this yerel (lokal) değişkeni - inline tanımlı üye fonksiyonlar.
Değişkenler ve bellek Değişkenler
LINQ { C# 3.0 ve Language Integrated Query }
Zeynep Çelik Sunar….
Nesneye Dayalı Programlama
SQL Structured Query Language (Yapısal sorgulama dili)
dataReader- DataAdapter
Miras Alma EM-406 Java.
OOP UYGULAMA 5.
BPR152 ALGORİTMA VE PROGRAMLAMA - II
Namespaces and .NET Class Library (İsim Alanları Sınıf Kütüphanesi)
PROGRAMLAMA DİLLERİNE GİRİŞ Ders 6: Sınıflar
P AKET E RIŞIMLERI SıNıFLARıN YENIDEN KULLANıMı. P AKET ( P ACKAGE ) Paketler kütüphaneleri oluşturan elemanlardır. import java.io.BufferedReader; BufferedReader.
Nesne Tabanlı Programlama Dersi Edirne Kız Teknik ve Meslek Lisesi Hazırlayan : Nuri AVCI
DÖNGÜ İFADELERİ.
NESNEYE YÖNELİK PROGRAMLAMA
SQL (STRUCTURED QUERY LANGUAGE)
MySQL, SQL ve PHP Öğr.Gör.Şükrü KAYA.
DİZİLER.
BPR152 ALGORİTMA VE PROGRAMLAMA - II
DELEGATE OOP-UYG.
Erişim Denetimi, Fonksiyon
NESNE TABANLI PROGRAMLAMA -METOTLAR-
METODLAR.
C# Metot Overloading (Aşırı yükleme)
NESNEYE DAYALI PROGRAMLAMA
~DÖNGÜLER~.
.Net teknolojisi ve C# Yasin Gedik Dokuz Eylül Üniversitesi (4. Sınıf) Microsoft Danışman Öğrenci
Chapter 7: Using Methods. Metotları ve Kodlamayı Gizlemeyi Anlama Metot – Kapsüllenmiş ifadeler serisini gerçekleştiren bir görev – Kullanılan metodun.
C#.NET 5.0 C# .NET 5.0 Eğitimleri Volkan KANAT.
Java Sınıf ve Nesne Kavramı UML Gösterimi
BPR152 ALGORİTMA VE PROGRAMLAMA - II Öğr. Gör. Bayram AKGÜL
MySQL Operatörleri ve Fonksiyonları
Metotlar.
FONKSİYONLAR.
SQL SERVER 2008 Yücel YILDIRIM.
METOTLAR.
ÇOK BİÇİMLİLİK POLYMORPHISM
Önceki Dersi Hatırlama !!
JAVA’DA DÖNGÜLER.
Kalıtım , Sınıf Asli Ergün.
SQL SERVER STORED PROCEDURE
BPR152 ALGORİTMA VE PROGRAMLAMA - II Öğr. Gör. Bayram AKGÜL
DÖNGÜLER.
JAVA’DA DİZİLER Dr.Galip AYDIN.
Sınıflar ve Nesneler Sınıf: bir nesnenin şablonunu, kalıbını, şeklini, davranışını, kalıtımını değişkenleri, metodları ve ebeveynleri vasıtasıyla tanımlar.
Trees, Vectors, Iterators. ADT Abstract Data Type (ADT) vs implementation -Soyut Veri Türleri - Uygulamaları.
LINQtoSQL Silverligth Uygulamalarında LinqtoSql. LINQ (Language Integrated Query) özellikle dil içerisinde, Sql tarzı sorgular yazabilmemizi ve bunları.
Bölüm 5 Nesneler ve Metotlar
VTYS Öğr. Gör. Engin DUTAR
Bil 102 Bölüm 3 Java’da Program Akış Denetimi Bil 1021.
Bilgisayar programlarının en büyük avantajı, kullanıcının işini kolaylaştırmalarıdır. Her bilgisayar programı bunu değişik metotlar kullanarak sağlar.
Ders 2- Veri türleri, Karar ve Döngü Yapıları, Görsel Kontröller
Görsel C# ile Windows Programlama
SINIFLAR ve NESNELER. İlk sınıfımızı ekleyelim class KrediHesap { public ulong HesapNo; public double Limit; public string KartSahibi; }
METOTLAR.
HIBERNATE Uygulama ile birleştirilmesi hibernate.cfg.xml Ö ğ renci Tablosunun Hibernate’e uyarlanması Session, Transaction save, update, delete HQL Criteria.
BIL MOBiL PROGRAMLAMA TEKNiKLERi Yard. Doç. Dr. Oğuzhan Topsakal
Yeni Veritabanı Oluşturma
Sakarya Üniversitesi Bilgisayar ve Bilişim Bilimleri Fakültesi Bilgisayar Mühendisliği Prof. Dr. Ümit Kocabıçak Prof. Dr. Cemil Öz Doç. Dr. Ahmet Turan.
LINQ { C# 3.0 ve Language Integrated Query } MEHMET MECİT GÖK NO:
İbrahim Olgaç PROGRAMLAMA DİLLERİ SUNUMU C#
LINQ { C# 3.0 ve Language Integrated Query } Uğur UMUTLUOĞLU.
5. HAFTA Öğr. Gör. Yunus KÖKVER
Nesneye Dayalı Programlarla Nesne İlişki Haritalanması
Kurucular(Yapıcılar), Yıkıcılar
Nesneye Dayalı Programlama 1
WHAT İS THİS? Select the shape next to the correct word.
Sunum transkripti:

LINQ (Language Integrated Query) Yrd. Doç. Dr. Mustafa Cem Kasapbaşı Her yönüyle C# 9. baskı Sefer Algan Pro C# 2008 and the.NET 3.5 Platform Fourth Edition Andrew Troelsen

Introduction to LINQ The Purpose Why Linq Verilerle yapılan işlemleri daha etkili kılmak Veri kaynakları : List objeleri XML objeleri Sql Why Linq Kod içinde gömülü sorgu olmakta. Hataları anacak çalışma zamanında belli olmaktadır. Parametrelerde veri tipi ancak çalışma anında doğru olduğu belli olur.

ORM(object Relation Mapping) Musteri adlı sınıf oluşturularak, veri yapıları nesnel hale getirilmiş Veri tipi güvenliği Northwind DB, örneklendi Northwind DB, nesnelleşti İçindeki tablolar nesnelleşti public class Musteri{….} public class Northwind:DataContext { public Table<Musteri> Musteriler; …… } Northwind db= new Northwind(“connetion string”); var contacts =from c in db.Musteriler Where c.Ad==“Sefer” select new {c.Ad, c.Soyad};

LINQ to Object Var Sadece lokal değişken olabilir İlk değer atamak zorunludur Bir metodun geri dönüş tipi var olamaz Var ile bildirilen değişkene farklı bir değer atanamaz

Linq examples

Extension Methods Yapı, sınıf ve ara yüzler için Statik sınıf içinde tanımlanabilir Bildirimi static olarak yapılmalıdır Geliştirilecek tipin bildirimi, Genişleme metodunun ilk parametresi olmalı önüne this anahtar sözcüğü gelmeli Erişilebilir olmalı Sınıfın kendi metodu öncelikli şekilde çağırılır. Aşırı yüklenebilir. Bir tipe farklı static sınıflar içinde genişleme metodu eklenebilir. İmzalar farklı olmalıdır. LINQ haricinde de kullanılabilir.

Örnek

Lambda İfadeleri Kodun veri olarak ifade edilmesinde kullanılır. Lisp, python, schema gibi dillerde de kullanılmaktadır Sorgulama yaparken (parametre)=>(ifade gövdesi) Expression gövdeli x=>x+2 ; (int x)=x+1; Statement Gövdeli X=> {return x+3}; (x,y)=>x+y; ()=>{return true;}

Örnek Devam int[ ] numbers = { 10, 20, 30, 40, 1, 2, 3}; var subset = from i in numbers where i < 10 select i; foreach (var i in subset) Console.WriteLine("{0} < 10", i); Console.WriteLine() numbers[0] = 4; ******************************** 1<10 4<10 2<10 1<10 3<10 2<10 3<10 *********************** int[] subsetAsIntArray = (from i in numbers where i < 10 select i).ToArray() (from i in numbers where i < 10 select i).ToArray<int>(); List<int> subsetAsListOfInts = (from i in numbers where i < 10 select i).ToList<int>();

Örnek devam class Car { } public string PetName = string.Empty; public string Color = string.Empty; public int Speed; public string Make = string.Empty; } List<Car> myCars = new List<Car>() { new Car{ PetName = "Henry", Color = "Silver", Speed = 100, Make = "BMW"}, new Car{ PetName = "Daisy", Color = "Tan", Speed = 90, Make = "BMW"}, new Car{ PetName = "Mary", Color = "Black", Speed = 55, Make = "VW"}, new Car{ PetName = "Clunker", Color = "Rust", Speed = 5, Make = "Yugo"}, new Car{ PetName = "Melvin", Color = "White", Speed = 43, Make = "Ford"} }; static void GetFastCars(List<Car> myCars) var fastCars = from c in myCars where c.Speed > 55 select c; foreach (var car in fastCars) Console.WriteLine("{0} is going too fast!", car.PetName);

index

Partial Methods Kısmi metotlar sadece kısmi tipler içinde bildirilebilir. Kısmi metodların gövdesi olamk zorında değildir. partial anahtar kelimesi kullanılır Geri dönüş değerleri void olmak zorunda dır. Override, virtual, new, abstract ve sealed kullanılamaz Static olabilirler Erişim belirleyici kullanılmaz

LINQ to SQL Classes corresponding to databasse tables and records are created

Update Delete Insert CRUD Inserting new record (LinqForms is the name of project)

Update Delete Insert CRUD

Update Delete Insert CRUD Db.Yazars.DeleteOnSubmit( kayit ) Db.SubmitChanges()

LINQ examples

Example 1

LINQ Example 2

LINQ Ex3