Provedor de banco de dados Microsoft SQL Server EF Core
Esse provedor de banco de dados permite que o Entity Framework Core seja usado com o Microsoft SQL Server (incluindo o Azure SQL e o Azure Synapse Analytics). O provedor é mantido como parte do Entity Framework Core Project.
Instalar
Instale o pacote NuGet Microsoft.EntityFrameworkCore.SqlServer.
- da CLI do .NET Core
- Visual Studio
dotnet add package Microsoft.EntityFrameworkCore.SqlServer
Observação
O provedor faz referência a Microsoft.Data.SqlClient (não System.Data.SqlClient). Se seu projeto tem uma dependência direta de SqlClient, certifique-se de que ele faz referência ao pacote Microsoft.Data.SqlClient.
Dica
O pacote Microsoft.Data.SqlClient é fornecido com mais frequência do que o provedor EF Core. Se você quiser aproveitar os novos recursos e correções de bugs, você pode adicionar uma referência direta de pacote para a versão mais recente do Microsoft.Data.SqlClient.
Advertência
A implementação assíncrona do Microsoft.Data.SqlClient infelizmente tem alguns problemas conhecidos (por exemplo, #593, #601 e outros). Se você estiver vendo problemas de desempenho inesperados, tente usar a execução de comando de sincronização, especialmente ao lidar com texto grande ou valores binários.
Utilização
A partir do EF 9, é recomendável usar UseAzureSql
e UseAzureSynapse
para especificar que você está se conectando ao SQL do Azure ou ao Azure Synapse Analytics especificamente e UseSqlServer
especificar que está se conectando ao SQL Server local; Isso permite que o provedor otimize e suporte adequadamente essas plataformas. Também é recomendado usar UseCompatibilityLevel
método para especificar o nível de compatibilidade para que o SQL gerado seja compatível e/ou use os recursos mais recentes possíveis.
Observação
Os métodos UseAzureSql e UseAzureSynapse foram introduzidos no EF Core 9.0.
Mecanismos de banco de dados suportados
- Microsoft SQL Server (a partir de 2012)
- Azure SQL
- Azure Synapse Analytics