Öncelikle bu yazının bir .NET 3.0+ makalesi olduğunu söylemek isterim.Bence “linq icat oldu mertlik bozuldu(LİOMB)”, Makale 1.İzin verirseniz linq ile ilgili tüm makalalerimin başına bu başlığı, “LİOMB”, koymayı istiyorum. Peki neden linq icat oldu mertlik bozuldu. Çünkü, artık veritabanı işlemleri gerçekten çocuk oyuncağına dönüştü. O kadar basit bir şekilde veritabanından verileri alıyorsunuz ve işliyorsunuz ki eski yöntemlerle uğraşmak artık zor geliyor. Tabi ki bazı arkadaşlar hız ne olacak diye söylenmeye başlayabilirler. Kimin umrunda :), en azından bu konu bu makalenin konusu değil. Hem günlük 300-500 kullanıcının ziyaret ettiği bir kaç sitede kullandım ve gerçekten bir sorun yaşamadım.İsterseniz eskiden veritabanından nasıl veri çektiğimize bir göz atalım ne dersiniz.Bir connection string yaratılır.Connection nesnesi yaratılır ve yaratılırken connection string kullanılır.Connection nesnesi ile bir command nesnesi yaratılır.Bir data adapter yaratılır ve bu data adapterda command nesnesi kullanılarak veriler çekilip bir DataTable doldurulur.İşte böyle bir zorlu yoldan geçerek veritabanından verilerimizi alırdık eskiden.Şimdi ne yapıyoruz bakalım.Bir DBML dosyası yaratıp içerisine veritabanımızı modelliyoruz.Sonrasında DBML dosyasında belirtilen DataContext nesnemizden bir örnek yaratıyoruz.Sadece tek satır kod ile istediğimiz veri kümesini veritabanından çekiyoruz.İsterseniz bir de kodlarla bu işlemleri görelim. İlk olarak eski yöntem
Şimdi de yeni yöntemi görelim yani Linq to SQL
Evet işte bu kadar basit bir şekilde tüm ilanlarımızı veritabanından çekmiş bulunuyoruz. Ne kadar basit değil mi?Gel gelelim iç içe repeater, datalist vb veri göstericilerinin kullanımına.Diyelim bir datalistiniz var ve içerisinde de bir repeater ile içiçe gösterim yapmak istiyorsunuz. Örneğin, Ana Kategori altındaki alt kategorileri göstereceksiniz.
Linq to SQL – İçiçe (Nested) Repeater – Datalist Kullanımı
halislus | 10 June 2009 13:16
Linq ile zaten DBML dosyasında ilişkileri ile veritabanınızın bir modeli var. Bu model sayesinde sizin ayrı ayrı tabloları elde edip ilişki vermenize gerek kalmıyor. Sadece ilk tabloyu veritabanından alıyorsunuz ve detay tablo DBML’deki ilişki sayesinde ulaşılabilir oluyor. İşte bu kadar basit.Linq icat oldu mertlik bozuldu(LİOMB). Bir sonraki makalede buluşmak üzere.