Je fais un projet ASP.NET Core . J'ai installé les packages Microsoft.EntityFrameworkCore
et Microsoft.EntityFrameworkCore.Tools
NuGet.
J'ai exécuté la commande Add-Migration InitialCreate
, Ce qui a créé le dossier Migrations
et le fichier 20180905180349_InitialCreate.cs
.
Mais ça dit
Le type ou le nom de l'espace de noms 'Migrations' n'existe pas dans le fichier espace de noms 'Microsoft.EntityFrameworkCore' (il manque une référence. Assembly .__?)
Quelle est la cause de cette erreur. Dois-je installer un autre package?
Ok, je vais vous montrer la configuration minimale requise pour les migrations EF Core +:
Vous devrez installer Microsoft.EntityFramework.Core, mais il vaut mieux que vous installiez d'abord un fournisseur EF Core pour la base de données à utiliser. Ensuite, ce fournisseur EF Core extraira toutes les dépendances requises (y compris Microsoft.EntityFramework.Core).
Ainsi (par exemple) pour la base de données SQLServer, dans la console du gestionnaire de packages, je vais installer:
Install-Package Microsoft.EntityFrameworkCore.SqlServer
Install-Package Microsoft.EntityFrameworkCore.Tools (pour les commandes powershell)
Install-Package Microsoft.EntityFrameworkCore.Design (contient le moteur de migration - et important note ce package doit être à l'intérieur du projet exécutable)
Et c'est tout.
using Microsoft.EntityFrameworkCore; //Add to your reference at top of solution.
Mettez simplement cela dans votre référence pour que la magie se produise.