Aracılığıyla paylaş


Veritabanı Sağlayıcıları

Entity Framework Core, veritabanı sağlayıcıları olarak adlandırılan eklenti kitaplıkları aracılığıyla birçok farklı veritabanına erişebilir.

Geçerli sağlayıcılar

Important

EF Core sağlayıcıları çeşitli kaynaklar tarafından oluşturulur. Tüm sağlayıcılar Microsoft Entity Framework Core Projesi kapsamında korunmaz. Sağlayıcıyı değerlendirirken gereksinimlerinizi karşıladığından emin olmak için kalite, lisanslama, destek vb. yönleri değerlendirmeyi unutmayın. Ayrıca, ayrıntılı sürüm uyumluluğu bilgileri için her sağlayıcının belgelerini gözden geçirmeyi unutmayın.

Important

EF Core sağlayıcıları genellikle ana sürümlerde çalışmaz. Örneğin, EF Core 8 için yayımlanan bir sağlayıcı EF Core 9 ile çalışmaz.

NuGet Paketi Desteklenen veritabanı altyapıları Bakımcı / Satıcı Notlar / Gereksinimler EF Core için Yararlı bağlantılar
Microsoft.EntityFrameworkCore.SqlServer Azure SQL, SQL Server 2012 ve üzeri, Azure Synapse Analytics EF Core Projesi (Microsoft) 8, 9, 10 docs
Microsoft.EntityFrameworkCore.Sqlite SQLite 3.46.1 ve üzeri EF Core Projesi (Microsoft) 8, 9, 10 docs
Microsoft.EntityFrameworkCore.InMemory EF Core bellek içi veritabanı EF Core Projesi (Microsoft) Limitations 8, 9, 10 docs
Microsoft.EntityFrameworkCore.Cosmos Azure Cosmos DB SQL API'sı EF Core Projesi (Microsoft) 8, 9, 10 docs
Npgsql.EntityFrameworkCore.PostgreSQL PostgreSQL Npgsql Geliştirme Ekibi 8, 9 docs
Pomelo.EntityFrameworkCore.MySql MySQL, MariaDB Pomelo Foundation Projesi 8, 9 readme
MySql.EntityFrameworkCore MySQL MySQL projesi (Oracle) 8, 9 docs
Oracle.EntityFrameworkCore Oracle DB 19c ve üzeri Oracle 8, 9, 10 docs
MongoDB.EntityFrameworkCore MongoDB MongoDB 8 docs
Couchbase.EntityFrameworkCore Couchbase Couchbase 8, 9 docs
Devart.Data.MySql.EFCore MySQL 5 ve sonrası DevArt Paid 8, 9 docs
Devart.Data.Oracle.EFCore Oracle DB 9.2.0.4 ve sonrası DevArt Paid 8, 9 docs
Devart.Data.PostgreSql.EFCore PostgreSQL 8.0 ve sonrası DevArt Paid 8, 9 docs
Devart.Data.SQLite.EFCore SQLite 3 ve sonrası DevArt Paid 8, 9 docs
Devart.Data.DB2.EFCore DB2 DevArt Paid 8, 9 docs
Devart.Data.Bigcommerce.EFCore BigCommerce DevArt Paid 8, 9 docs
Devart.Data.Dynamics.EFCore Microsoft Dynamics 365 DevArt Paid 8, 9 docs
Devart.Data.FreshBooks.EFCore FreshBooks DevArt Paid 8, 9 docs
Devart.Data.Magento.EFCore Magento DevArt Paid 8, 9 docs
Devart.Data.MailChimp.EFCore Mailchimp DevArt Paid 8, 9 docs
Devart.Data.QuickBooks.EFCore QuickBooks DevArt Paid 8, 9 docs
Devart.Data.Salesforce.EFCore Salesforce DevArt Paid 8, 9 docs
Devart.Data.ExactTarget.EFCore Salesforce MC (ExactTarget) DevArt Paid 8, 9 docs
Devart.Data.Sugar.EFCore SugarCRM DevArt Paid 8, 9 docs
Devart.Data.Zoho.EFCore Zoho CRM DevArt Paid 8, 9 docs
Devart.Data.ZohoBooks.EFCore Zoho Kitapları DevArt Paid 8, 9 docs
Devart.Data.ZohoDesk.EFCore Zoho Masası DevArt Paid 8, 9 docs
MASES.EntityFrameworkCore.KNet Apache Kafka MASES Grubu Deneme, Abonelik 8 docs
InterBase InterBase InterBase 8 docs
FirebirdSql.EntityFrameworkCore.Firebird Firebird 3.0 ve sonrası Jiří Činčura 8 docs
IBM.EntityFrameworkCore Db2, Informix IBM Ücretli, Windows 8 Başlarken
IBM.EntityFrameworkCore-lnx Db2, Informix IBM Ücretli, Linux 8 Başlarken
IBM.EntityFrameworkCore-osx Db2, Informix IBM Ücretli, macOS 8 Başlarken
EntityFrameworkCore.Jet Microsoft Access dosyaları CirrusRedOrg Windows 8, 9 readme
Google.Cloud.EntityFrameworkCore.Spanner Google Cloud Spanner Cloud Spanner Ekosistemi 8 tutorial
Teradata.EntityFrameworkCore Teradata Veritabanı 16.10 ve sonrası Teradata 3 website
FileContextCore Verileri dosyalarda depolar Morris Janatzek Geliştirme amacıyla 3 readme
FileBaseContext Tabloları dosyalarda depolama k.D.g Geliştirme amacıyla 8, 9, 10 readme
EntityFrameworkCore.SqlServerCompact35 SQL Server Compact 3.5 Erik Ejlskov Jensen .NET Framework 2 wiki
EntityFrameworkCore.SqlServerCompact40 SQL Server Compact 4.0 Erik Ejlskov Jensen .NET Framework 2 wiki
EntityFrameworkCore.OpenEdge İlerleme OpenEdge Alex Wiese 2 readme
EFCore.Snowflake Snowflake Krzysztof Sielaff 8 readme
EFCore.Kusto Azure Veri Gezgini (Kusto) Anas İsmail Han 8 readme
EntityFrameworkCore.Ydb YDB YDB Ekibi 9, 10 website

Uygulamanıza veritabanı sağlayıcısı ekleme

EF Core için çoğu veritabanı sağlayıcısı NuGet paketleri olarak dağıtılır ve aşağıdaki gibi yüklenebilir:

dotnet add package provider_package_name

Yüklendikten sonra, bağımlılık ekleme kapsayıcısı kullanıyorsanız sağlayıcıyı DbContext içinde, OnConfiguring yönteminde veya AddDbContext yönteminde yapılandırırsınız. Örneğin, aşağıdaki satır SQL Server sağlayıcısını geçirilen bağlantı dizesiyle yapılandırmaktadır:

optionsBuilder.UseSqlServer(
    @"Server=(localdb)\mssqllocaldb;Database=MyDatabase;Trusted_Connection=True;");

Veritabanı sağlayıcıları EF Core'un kapsamını genişleterek belirli veritabanlarına özgü işlevleri etkinleştirebilir. Bazı kavramlar çoğu veritabanında ortaktır ve birincil EF Core bileşenlerine dahildir. Bu tür kavramlar LINQ'de sorgu ifade etme, işlemler ve veritabanından yüklendikten sonra nesnelerde yapılan değişiklikleri izlemeyi içerir. Bazı kavramlar belirli bir sağlayıcıya özeldir. Örneğin, SQL Server sağlayıcısı bellek için iyileştirilmiş tablolar yapılandırmanıza (SQL Server özgü bir özellik) olanak tanır. Diğer kavramlar bir sağlayıcı sınıfına özeldir. Örneğin, ilişkisel veritabanları için EF Core sağlayıcıları; tablo ve sütun eşlemeleri, yabancı anahtar kısıtlamaları vb. yapılandırmaya yönelik API'ler sağlayan ortak Microsoft.EntityFrameworkCore.Relational kitaplığını temel alır. Sağlayıcılar genellikle NuGet paketleri olarak dağıtılır.

Important

EF Core'un yeni bir düzeltme eki sürümü yayımlandığında sıklıkla Microsoft.EntityFrameworkCore.Relational paketinin güncelleştirmelerini içerir. İlişkisel veritabanı sağlayıcısı eklediğinizde, bu paket uygulamanızın geçişli bir bağımlılığı haline gelir. Ancak birçok sağlayıcı EF Core'dan bağımsız olarak yayımlanır ve paketin daha yeni düzeltme eki sürümüne bağımlı olacak şekilde güncelleştirilmeyebilir. Tüm hata düzeltmelerini aldığınızdan emin olmak için Microsoft.EntityFrameworkCore.Relational düzeltme eki sürümünü uygulamanızın doğrudan bağımlılığı olarak eklemeniz önerilir.