Dapper ORM Nedir? (Örnekli Anlatım)

Elif Şirin
3 min readJun 11, 2021

Merhabalar geçen yazımda veri tabanı normalizasyonunu anlatmıştım. Bu yazımda da database ile kod arasında uyumunun nasıl sağlandığını adım adım C# kodu inşa ederek anlatacağım.

Dapper hangi noktada konumuza giriyor. Dapper, Micro ORM araçlarının içinde en hızlısıdır.

Object relational mappers (ORMs): İlişkisel veritabanları ile programlama dillerinin nesne modelleri arasındaki uyumsuzluğu ortadan kaldırmak, kod ile database arasındaki uyumu %100 sağlamak için yazılım dünyasında uzun süredir kullanılmaktadırlar.

Stack Overflow ekibi tarafından geliştirilen Dapper, open source olan hafif (Lightweight) bir ORM’dir.

Hadi gelin, Dapper kullanımını anlamak için Visual Studio editörünü kullanarak C# dilinde bir console uygulaması yapalım.

İlk önce Dapper kurulumumuzu gerçekleştirelim.

1. Aşağıda gösterildiği gibi NuGet Packet Manager’i bulalım.

NuGet Packet Manager

2. Daha sonra açılan sayfadan browse sekmesinden Dapper paketini kuralım.

Dapper Paketi Kurulumu

3. Sonuç olarak, projemizin Packages kısmında Dapper paketimiz görülecektir.

Projemizdeki Dapper Paketinin Görünüşü

Kurulumumuzu başarıyla tamaladıktan sonra hadi gelin bir de veri tabanımızı oluşturalım. Ben burada Northwind adında bir database kurulumu yapacağım.

Bu sitedeki adımları takip ederek siz de bu database kolayca indirip, kurabilirsiniz.

Tabii ki kendimizde database oluşturabilirdik. Ancak ben veri girişi yapmak istemediğim için bu veri tabanını kullanacağım. Nortwind veri tabanında yer alan Customers tablosu için SSMS’de aşağıdaki sorguyu yazdım.

SSMS Sorgusu

Şimdi açtığım konsole uygulamasıyla Dapper yardımıyla kolay bir şekilde bu sorguyı yaptırmaya çalışacağız. İlk önce Northwind veri tabanını uygulamamızla connection (bağlanmasını) olmasını sağlayalım.

Veri Tabanı Bağlantısı

Daha sonra Customers tablosuyla çalışacağımız ve eklemeyi bu tabloya yapacağımızdan dolayı Customers sınıfımızı Northwind veri tabanındaki Customers tablosunun kolonlarına göre oluşturalım.

Customers Class

Şimdi geldi Dapper kullanarak bu tablomuza veri eklemeye ve tablodaki verileri liste şeklinde tutarak konsola yazdırma işlemine..

Dapper ile Veri Ekleme ve Tablodaki Verileri Konsola Yazdırma

Hadi gelin kodumuzu çalıştırıp, konsoldaki çıktımızı görelim.

Console Çıktısı

Bu şekilde tablodaki bütün verilerimizi yazdırdı. AELIF verimiz eklenmiş olarak çıktımızda görüyorsunuz. Peki bu verinin gerçekten eklenip eklenmediğini kontrol etmek için gelin tekrar SSMS’de bir sorgu daha yazıp kontrol edelim.

SSMS Sorgusu

Yukarıda görüldüğü gibi verimiz tablomuza başarılı bir şekilde eklenmiştir.

DapperConsoleApp kodlarımın tamamına bu linke tıklayarak ulaşabilirsiniz. :)

Bir sonraki yazımda görüşmek üzere keyifli günler dilerimmm :)

--

--