Microsoft SQL Server EF Core Database Provider
Questo provider di database consente l'uso di Entity Framework Core con Microsoft SQL Server (incluso Azure SQL e Azure Synapse Analytics). Il provider viene gestito come parte del Entity Framework Core Project.
Installare
Installare il pacchetto NuGet Microsoft.EntityFrameworkCore.SqlServer.
dotnet add package Microsoft.EntityFrameworkCore.SqlServer
Nota
Il provider fa riferimento a Microsoft.Data.SqlClient (non a System.Data.SqlClient). Se il progetto ha una dipendenza diretta da SqlClient, assicurati che faccia riferimento al pacchetto Microsoft.Data.SqlClient.
Consiglio
Il pacchetto Microsoft.Data.SqlClient viene fornito più frequentemente del provider EF Core. Se si desidera sfruttare le nuove funzionalità e le correzioni di bug, è possibile aggiungere un riferimento diretto al pacchetto alla versione più recente di Microsoft.Data.SqlClient.
Avvertimento
L'implementazione asincrona di Microsoft.Data.SqlClient purtroppo presenta alcuni problemi noti, ad esempio #593, #601e altri. Se si verificano problemi di prestazioni imprevisti, provare ad utilizzare l'esecuzione sincrona dei comandi, soprattutto quando si gestiscono valori di testo o binari di grandi dimensioni.
Uso
A partire da EF 9, è consigliabile usare UseAzureSql
e UseAzureSynapse
per specificare che ci si connette ad Azure SQL o Azure Synapse Analytics in modo specifico e UseSqlServer
per specificare che ci si connette a SQL Server locale; in questo modo il provider può ottimizzare e supportare correttamente queste piattaforme. È anche consigliabile usare UseCompatibilityLevel
metodo per specificare il livello di compatibilità in modo che SQL generato sia compatibile e/o usi le funzionalità più recenti possibili.
Nota
I metodi UseAzureSql e UseAzureSynapse sono stati introdotti in EF Core 9.0.
Motori di database supportati
- Microsoft SQL Server (2012 e versioni successive)
- Azure SQL
- Azure Synapse Analytics