Installation d’Entity Framework CoreInstalling Entity Framework Core

PrérequisPrerequisites

  • Pour développer des applications qui ciblent .NET Core 2.1, installez le SDK .NET Core 2.1.To develop apps that target .NET Core 2.1, install the .NET Core 2.1 SDK. Le kit SDK doit être installé même si vous disposez de la dernière version de Visual Studio 2017.The SDK has to be installed even if you have the latest version of Visual Studio 2017.

  • Pour utiliser Visual Studio pour développer des applications qui ciblent .NET Core 2.1, installez Visual Studio 2017 version 15.7 ou ultérieure.To use Visual Studio for development of apps that target .NET Core 2.1, install Visual Studio 2017 version 15.7 or later.

  • Pour utiliser Entity Framework 2.1 dans les applications ASP.NET Core, utilisez ASP.NET Core 2.1.To use Entity Framework 2.1 in ASP.NET Core applications, use ASP.NET Core 2.1. Les applications qui utilisent des versions antérieures d’ASP.NET Core doivent être mises à jour avec la version 2.1.Applications that use earlier versions of ASP.NET Core must be updated to 2.1.

  • Vous pouvez utiliser Visual Studio 2015 pour les applications qui ciblent .NET Framework 4.6.1 ou ultérieur.You can use Visual Studio 2015 for apps that target the .NET Framework 4.6.1 or later. Par contre, vous avez besoin d’une version NuGet qui connaît .NET Standard 2.0 et ses frameworks compatibles.But you need a version of NuGet that is aware of the .NET Standard 2.0 and its compatible frameworks. Pour obtenir ceci dans Visual Studio 2015, mettez à niveau le client NuGet avec la version 3.6.0.To get that in Visual Studio 2015, upgrade the NuGet client to version 3.6.0.

Obtenir le runtime Entity Framework CoreGet the Entity Framework Core runtime

Pour ajouter les bibliothèques du runtime EF Core dans une application, installez le package NuGet du fournisseur de base de données que vous souhaitez utiliser.To add EF Core runtime libraries to an application, install the NuGet package for the database provider you want to use. Pour obtenir la liste des fournisseurs pris en charge et leurs noms de package NuGet, consultez Fournisseurs de bases de données.For a list of supported providers and their NuGet package names, see Database providers.

Pour installer ou mettre à jour les packages NuGet, utilisez l’interface CLI .NET Core, la boîte de dialogue Gestionnaire de package Visual Studio ou la console du Gestionnaire de package Visual Studio.To install or update NuGet packages, use the .NET Core CLI, the Visual Studio Package Manager Dialog, or the Visual Studio Package Manager Console.

Pour les applications ASP.NET Core 2.1, les fournisseurs SQL Server en mémoire sont automatiquement inclus, il est donc inutile de les installer séparément.For ASP.NET Core 2.1 applications, the in-memory and SQL Server providers are automatically included, so there's no need to install them separately.

Conseil

Si vous devez mettre à jour une application qui utilise un fournisseur de base de données tiers, recherchez toujours une mise à jour du fournisseur qui est compatible avec la version d’EF Core à utiliser.If you need to update an application that is using a third-party database provider, always check for an update of the provider that is compatible with the version of EF Core you want to use. Par exemple, les fournisseurs de base de données pour les versions antérieures ne sont pas compatibles avec la version 2.1 du runtime EF Core.For example, database providers for previous versions are not compatible with version 2.1 of the EF Core runtime.

CLI .NET Core.NET Core CLI

La commande de l’interface CLI .NET Core suivante installe ou met à jour le fournisseur SQL Server :The following .NET Core CLI command installs or updates the SQL Server provider:

dotnet add package Microsoft.EntityFrameworkCore.SqlServer

Vous pouvez indiquer une version spécifique dans la commande dotnet add package, à l’aide du modificateur -v.You can indicate a specific version in the dotnet add package command, using the -v modifier. Par exemple, pour installer des packages EF Core 2.1.0, ajoutez -v 2.1.0 à la commande.For example, to install EF Core 2.1.0 packages, append -v 2.1.0 to the command.

Boîte de dialogue Gestionnaire de package NuGet Visual StudioVisual Studio NuGet Package Manager Dialog

  • Dans le menu, sélectionnez Projet > Gérer les packages NuGet.From the menu, select Project > Manage NuGet Packages

  • Cliquez sur l’onglet Parcourir ou Mises à jour.Click on the Browse or the Updates tab

  • Pour installer ou mettre à jour le fournisseur SQL Server, sélectionnez le package Microsoft.EntityFrameworkCore.SqlServer et confirmez.To install or update the SQL Server provider, select the Microsoft.EntityFrameworkCore.SqlServer package, and confirm.

Pour plus d’informations, consultez Boîte de dialogue Gestionnaire de package NuGet.For more information, see NuGet Package Manager Dialog.

Console du Gestionnaire de package NuGet Visual StudioVisual Studio NuGet Package Manager Console

  • Dans le menu, sélectionnez Outils > Gestionnaire de package NuGet > Console du Gestionnaire de package.From the menu, select Tools > NuGet Package Manager > Package Manager Console

  • Pour installer le fournisseur SQL Server, exécutez la commande suivante dans la Console du Gestionnaire de package :To install the SQL Server provider, run the following command in the Package Manager Console:

    Install-Package Microsoft.EntityFrameworkCore.SqlServer
    
  • Pour mettre à jour le fournisseur, utilisez la commande Update-Package.To update the provider, use the Update-Package command.

  • Pour indiquer une version spécifique, utilisez le modificateur -Version.To specify a specific version, use the -Version modifier. Par exemple, pour installer les packages EF Core 2.1.0, ajoutez -Version 2.1.0 aux commandes.For example, to install EF Core 2.1.0 packages, append -Version 2.1.0 to the commands

Pour plus d’informations, consultez Console Gestionnaire de package.For more information, see Package Manager Console.

Obtenir les outils Entity Framework CoreGet Entity Framework Core tools

En plus des bibliothèques du runtime, vous pouvez installer les outils capables d’effectuer des tâches liées à EF Core dans votre projet au moment du design.Besides the runtime libraries, you can install tools that can perform some EF Core-related tasks in your project at design time. Par exemple, vous pouvez créer des migrations, appliquer des migrations et créer un modèle basé sur une base de données existante.For example, you can create migrations, apply migrations, and create a model based on an existing database.

Deux ensembles d’outils sont disponibles :Two sets of tools are available:

Même si vous pouvez utiliser les commandes dotnet ef à partir de la console du Gestionnaire de package, il est plus pratique de se servir des outils de la console du Gestionnaire de package quand vous utilisez Visual Studio :Although you can use the dotnet ef commands from the Package Manager Console, it's more convenient to use the Package Manager Console tools when you're using Visual Studio:

  • Ils fonctionnent automatiquement avec le projet sélectionné dans la console du Gestionnaire de package et vous évitent de devoir passer d’un répertoire à l’autre manuellement.They automatically work with the current project selected in the Package Manager Console without requiring manually switching directories.
  • Elles ouvrent automatiquement les fichiers générés par les commandes de Visual Studio après avoir été exécutées.They automatically open files generated by the commands in Visual Studio after the command is completed.

Obtenir les outils CLIGet the CLI tools

Les commandes dotnet ef sont dans le SDK .NET Core, mais pour les activer, vous devez installer le package Microsoft.EntityFrameworkCore.Design :The dotnet ef commands are included in the .NET Core SDK, but to enable the commands you have to install the Microsoft.EntityFrameworkCore.Design package:

dotnet add package Microsoft.EntityFrameworkCore.Design 

Pour les applications ASP.NET Core 2.1, ce package est inclus automatiquement.For ASP.NET Core 2.1 apps, this package is included automatically.

Comme expliqué précédemment dans Prérequis, vous devez également installer le SDK .NET Core 2.1.As explained earlier in Prerequisites, you also need to install the .NET Core 2.1 SDK.

Important

Utilisez toujours la version des packages d’outils qui correspond à la version principale des packages du runtime.Always use the version of the tools package that matches the major version of the runtime packages.

Obtenir les outils de la console du Gestionnaire de packageGet the Package Manager Console tools

Pour obtenir les outils de la console du Gestionnaire de package pour EF Core, installez le package Microsoft.EntityFrameworkCore.Tools :To get the Package Manager Console tools for EF Core, install the Microsoft.EntityFrameworkCore.Tools package:

dotnet add package Microsoft.EntityFrameworkCore.Tools

Pour les applications ASP.NET Core 2.1, ce package est inclus automatiquement.For ASP.NET Core 2.1 apps, this package is included automatically.

Mise à niveau vers EF Core 2.1Upgrading to EF Core 2.1

Si vous mettez à niveau une application existante avec EF Core 2.1, vous pouvez être amené à supprimer manuellement des références à des packages EF Core plus anciens :If you're upgrading an existing application to EF Core 2.1, some references to older EF Core packages may need to be removed manually:

  • Les packages design-time des fournisseurs de base de données tels que Microsoft.EntityFrameworkCore.SqlServer.Design ne sont plus obligatoires ou pris en charge dans EF Core 2.1, mais ne sont pas automatiquement supprimés durant la mise à niveau des autres packages.Database provider design-time packages such as Microsoft.EntityFrameworkCore.SqlServer.Design are no longer required or supported in EF Core 2.1, but aren't automatically removed when upgrading the other packages.

  • Les outils CLI .NET étant désormais inclus dans le Kit de développement logiciel (SDK) .NET, la référence à ce package peut être supprimée du fichier .csproj :The .NET CLI tools are now included in the .NET SDK, so the reference to that package can be removed from the .csproj file:

    <DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="2.0.0" />
    

Pour les applications qui ciblent le .NET Framework et qui ont été créées dans des versions antérieures de Visual Studio, vérifiez qu’elles sont compatibles avec les bibliothèques .NET Standard 2.0 :For applications that target the .NET Framework and were created by earlier versions of Visual Studio, make sure that they are compatible with .NET Standard 2.0 libraries:

  • Modifiez le fichier projet et vérifiez que l’entrée suivante apparaît dans le groupe de propriétés initiales :Edit the project file and make sure the following entry appears in the initial property group:

    <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
    
  • Pour les projets de test, vérifiez également que l’entrée suivante est présente :For test projects, also make sure the following entry is present:

    <GenerateBindingRedirectsOutputType>true</GenerateBindingRedirectsOutputType>