Linq-to-SQL kullanan büyük bir projesi olan müşteri için çalışıyorum. Entity Framework o sırada bazı önemli özelliklerden yoksun olduğu ve Linq-to-SQL'in performansı çok daha iyi olduğu için proje başladığında bu bariz bir seçimdi.
Şimdi EF evrim geçirdi ve Linq-to-SQL, yüksek düzeyde ölçeklenebilir hizmetler için harika olan zaman uyumsuz desteğe sahip değil. Bazen saniyede 100'den fazla isteğimiz var ve veritabanlarımızı optimize etmemize rağmen, çoğu sorgunun tamamlanması birkaç milisaniye sürüyor. Senkronize veritabanı çağrıları nedeniyle, iş parçacığı engellenir ve diğer istekler için kullanılamaz.
Yalnızca bu özellik için Varlık Çerçevesine geçmeyi düşünüyoruz. Microsoft'un Linq-to-SQL'e zaman uyumsuz destek uygulamadığı (ya da topluluğun bunu yapabilmesi için utanç verici) bir utanç.
Ek Aralık 2018: Microsoft, .NET Core'a doğru ilerliyor ve Linq-2-SQL, .NET Core'da desteklenmediğinden, gelecekte EF.Core'a geçebildiğinizden emin olmak için EF'e taşınmanız gerekir.
LLBLGen gibi dikkate alınması gereken başka seçenekler de vardır . Zaten uzun süredir var olan ve MS veri çözümlerinden (ODBC, ADO, ADO.NET, Linq-2-SQL, EF, EF.core) daha fazla kanıtlanmış olgun bir ORM çözümüdür.