Dapper

905bb8f6-e568-4eda-a2a1-7e6b0b95420e

Herkese merhaba,

Bu makalede sizlere stackoverflow tarafından geliştirilen micro orm kütüphanesi olan Dapper dan bahsediyor olacağım.Dapper Entity Framework gibi tam bir ORM (Object Relation Mapper) kütüphanesi değildir. Diğer ORM kütüphaneleri ile karşılaştırıldığında en dikkat çekici özelliği performansıdır. Neredeyse ADO.NET kadar hızlıdır. Büyük ölçekli .NET projelerinde veri erişimi için ado.net yerine tercih edilebilecek en iyi alternatif diyebiliriz.

Dapper tek bir DLL den oluştur. Projenize nuget aracılığıyla aşağıdaki satırları yazarak dapper kütüphanesini ekleyebilirsiniz.

Örnek veri modelimizi aşağıda görebilirsiniz.

Company modeli için temel işlemlerimizi(CRUD) gerçekleştirmek istiyoruz.Bunu Dapper kullanarak yapacağız. Bunun için bir repository sınıfı yazdık.Temel işlemler bu sınıfın içerisinde yer alacak. Methodları incelediğinizde kodların içerisinde T-SQL sorgularını yazdığımızı da göreceksiniz. Dapper EF gibi otomatik sorguları oluşturmuyor. Tabi ki bunu sağlayacak Dapper-Extention kütüphanesi var. Buradan inceleyebilirsiniz.

Dapper Connection nesnesi üzerinden işlemleri gerçekleştiriyor.

Ayrıca kodun içerisine t-sql kodları yazmak istemiyorsanız bunların daha yönetilebilir olmasını istiyorsanız Stored Procedure leride kullanabilirsiniz. Aynı Repository sınıfın Stored Procedure kullanan şeklini de aşağıda görebilirsiniz.

Ayrıca dapper asenkron yapıyı  ve QueryMultiple() methodu ile de çoklu sorgu çekmemizi sağlar. Eğer dapper kullanıyorsanız projenize Dapper extention ı da ekleyerek dapper ı daha otomatik ve kullanışlı hale getirebilirsiniz. Temelini dapper oluşturan kendi projenize özgü veri erişim kütüphanesi oluşturabilirsiniz.

Aşağıda örnek proje dosyasını ve bağlantıları bulabilirsiniz.

İyi Çalışmalar

Proje Dosyaları ;

Leave a Reply

Your email address will not be published. Required fields are marked *