Yükleniyor...

18 Ekim 2020

Asp.Net Core 3.1 Linq2db Nedir ?

Herkese merhabalar, uzun zaman sonra tekrardan aranızda bulunuyor olmaktan dolayı mutluluk duymaktayım. Bu paylaşımımda sizlere değerli bir konu olduğunu düşündüğüm Linq2db ORM aracından bahsedeceğim.

Linq2db özellikle .Net Core projelerinde günümüzde sıklıkla kullanılmaya başlanan bir ORM aracıdır. Kullanılabilirliği bakımından oldukça verimli olduğunu düşünmekteyim. Projenizde birçok veri tabanı sistemlerini (MSSQL, MySQL, Oracle vb.) sistematik bir şekilde kullanabilirsiniz. Ayrıca bu veri tabanı sistemlerini aynı anda da kullanabilirsiniz. Yani tek bir solution içerisinde hem MSSQL veri tabanını hemde MySQL veri tabanını sorunsuzca kullanabilirsiniz.

Linq2db ORM Aracının Referansları Nelerdir ?

Linq2db ORM aracının örneğin önemli açık kaynaklı projelerde kullanıldığını görebilirsiniz. Bunlara örnek;

  • nopCommerce v4.30
  • OdataToEntity
  • SunEngine

Linq2db ORM Aracının Geliştiricileri Linq2db’yi Nasıl Tanıtıyorlar ?

Linq2db’nin geliştiricileri geliştirdikleri bu ORM aracı hakkında çok iddialı cümleler kullanmaktadırlar. Açıkçası ben paylaşmış oldukları bu iddialı cümlelere katılıp katılamayacak kadar Linq2db’yi test edebilmiş değilim. Aşağıdaki bahsetmiş olduğum iddiali cümleleri edinebilirsiniz.

"LINQ to DB, POCO nesneleriniz ve veri tabanınız arasında basit, hafif, hızlı ve tür açısından güvenli bir katman sunan en hızlı LINQ veri tabanı erişim kitaplığıdır.

Mimari olarak Dapper, Massive veya PetaPoco gibi mikro ORM'lerin bir adım üzerinde, kodunuz ve veri tabanı arasında ince bir soyutlama katmanı korurken sihirli dizelerle değil LINQ ifadeleriyle çalışıyorsunuz. Sorgularınız C # derleyicisi tarafından kontrol edilir ve kolay yeniden düzenlemeye izin verir.

Ancak, LINQ to SQL veya Entity Framework kadar ağır değildir. Değişiklik takibi yok, bu yüzden bunu kendiniz yönetmelisiniz, ancak olumlu tarafta verilerinize daha fazla kontrol ve daha hızlı erişim elde edebilirsiniz.

Başka bir deyişle, LINQ to DB, tür güvenli SQL'dir."

Dapper vs Linq2db

Aşağıda paylaşmış olduğum linkten Dapper ve Linq2db karşılaştırmasına bakabilirsiniz.

https://dotnet.libhunt.com/compare-dapper-dot-net-vs-linq2db

EntityFramework vs Linq2db

Aşağıda paylaşmış olduğum linkten EntityFramework vs Linq2db karşılaştırmasına bakabilirsiniz.

https://dotnet.libhunt.com/compare-linq2db-vs-entityframework

Örnek Proje

Linq2db ile şuan üzerinde çalıştığım bir .Net Core 3.1 ve Angular 10 projesi bulunmaktadır. Yukarıdaki yorumda da paylaşmış olduğum gibi geliştirmenin henüz başında olduğumdan dolayı henüz Linq2db ORM aracını net bir şekilde test edebilmiş değilim.

Örnek projeyi aşağımdaki Github linkinden edinebilir ve projenin mimarisini derinlemesine inceleyebilirsiniz.

Posted in Bilişim, Linq2dbTaggs:

Bir Cevap Yazın