1. Ana Sayfa
  2. ASP.Net
  3. Language Integrated Query (LINQ) Nedir? – Başlangıç – Bölüm 1

Language Integrated Query (LINQ) Nedir? – Başlangıç – Bölüm 1

LINQ .Net Framework 3.5 ile gelen, .Net dilleri için veri sorgulamalarında birçok yetenek kazandıran bir bileşendir.

LINQ sayesinde nesnelerle, xml dokümanlarla ve SQL verileriyle çalışırken, kolaylıkla sorgulama yapabiliyoruz. Bu sayede istediğimiz veriye çok daha zahmetsiz ve hızlı bir şekilde ulaşabiliriz.

Nesnelerle çalışırken LINQ sorgulaması yapabilmemiz için, nesnemizin IEnumarable veyaIEnumarable<T> ‘dan miras almış olması gerekmektedir.

Hemen bir örnekle başlayalım. Bir consol uygulaması açıp, LinqStarting olarak adlandırdım ve hızlıca aşağıdaki kodlamayı yaptım.

Aşağıdaki örnekte görebileceğiniz gibi Shelter isminde bir sınıf yaratım ve içine bazı property’ler tanımladım. Daha sonra bu nesnemden 4 adet oluşturarak bunlardan bir dizi meydana getirdim.

Sonrasında da dizi içinde yer alan Shelter(barınak) nesnelerinin “NumberOfDogFoot” isimli properylerindeki değere göre basit bir Select sorgusu yazdım.

Sorgudan da anlaşılabileceği gibi, köpek maması miktarı 30’dan küçük olan nesneleri sorguladım.

Son olarak da sorgudan dönen nesneleri bir döngü ile ekrana yazdırdım.


Resim-1

Uygulamamızı çalıştırdığımız zaman aşağıdaki gibi sonuçları ekrana yazılmış şekilde görmekteyiz. “NumberOfDogFood” isimli propertylerin değeri 30’dan küçük olan, “shelter3” ve “shelter4” nesneleri için ekrana iki satır veri yazıldı.


Resim-2

Böylelikle LINQ’ya hızlı bir giriş yapmış olduk. LINQ konusunu 3 ya da 4 bölümde hazırlamayı düşünüyorum. Bir sonraki bölümde biraz daha karmaşık sorgular ve LINQ bileşeni ile gelen diğer metotlara bakıp örnekler yapacağım.  Umarım az çok bir fikir uyandırmış ve size yardımcı olabilmişimdir. Sürçü lisan ettiysem affola.

Bu konuyla ilgili sorularınızı https://forum.mshowto.org linkini kullanarak ulaşacağınız forum sayfamızda sorabilirsiniz.

Referanslar

www.mshowto.org

Yorum Yap

Yazar Hakkında

2004 yılından beri Bilişim sektöründe profesyonel olarak çalışmaktayım. Microsoft teknolojilerini kullanarak daha çok Web ağırlıklı yazılım geliştirmekteyim.

Yorum Yap