Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Penyedia database ini memungkinkan Entity Framework Core digunakan dengan Microsoft SQL Server (termasuk Azure SQL dan Azure Synapse Analytics). Penyedia dipertahankan sebagai bagian dari Proyek Kerangka Kerja Inti Entitas.
Install
Instal paket NuGet Microsoft.EntityFrameworkCore.SqlServer .
dotnet add package Microsoft.EntityFrameworkCore.SqlServer
Note
Penyedia mereferensikan Microsoft.Data.SqlClient (bukan System.Data.SqlClient). Jika proyek Anda mengambil dependensi langsung pada SqlClient, pastikan proyek mereferensikan paket Microsoft.Data.SqlClient.
Tip
Paket Microsoft.Data.SqlClient dikirim lebih sering daripada penyedia EF Core. Jika Anda ingin memanfaatkan fitur baru dan perbaikan bug, Anda dapat menambahkan referensi paket langsung ke versi terbaru Microsoft.Data.SqlClient.
Warning
Implementasi asinkron Microsoft.Data.SqlClient sayangnya memiliki beberapa masalah yang diketahui (misalnya #593, #601, dan lainnya). Jika Anda melihat masalah performa yang tidak terduga, coba gunakan eksekusi perintah sinkronisasi, terutama saat berhadapan dengan teks besar atau nilai biner.
Usage
Dimulai dengan EF 9, disarankan untuk menggunakan UseAzureSql dan UseAzureSynapse untuk menentukan bahwa Anda terhubung ke Azure SQL atau Azure Synapse Analytics secara khusus, dan UseSqlServer untuk menentukan bahwa Anda terhubung ke SQL Server lokal; melakukannya memungkinkan penyedia untuk mengoptimalkan dan mendukung platform ini dengan benar. Disarankan juga untuk menggunakan metode UseCompatibilityLevel untuk menentukan tingkat kompatibilitas sehingga SQL yang dihasilkan kompatibel dan/atau menggunakan fitur terbaru yang mungkin.
Note
Metode UseAzureSql dan UseAzureSynapse diperkenalkan dalam EF Core 9.0.
EnableRetryOnFailureByDefault
EF 9 memperkenalkan metode EnableRetryOnFailureByDefault yang mengonfigurasi konteks menjadi strategi eksekusi default kecuali jika dikonfigurasi secara eksplisit (misalnya ketika menggunakan DI). Untuk menggunakannya, cukup panggil ConfigureSqlEngine(c => c.EnableRetryOnFailureByDefault()) dan kemudian Anda dapat menggunakan UseSqlServer seperti biasa. Tidak perlu memanggil EnableRetryOnFailureByDefault saat menggunakan UseAzureSql atau UseAzureSynapse, karena mereka sudah mengaktifkan strategi eksekusi default.
Mesin Database yang Didukung
- Microsoft SQL Server (2012 dan seterusnya)
- Azure SQL
- Azure Synapse Analytics