Je déploie une nouvelle application .NET Core sur mon serveur. J'essaie d'exécuter la migration EntityFramework, car le projet a été créé en utilisant la méthode "code-first".La version du package `Microsoft.EntityFrameworkCore.Tools.DotNet` n'a pas pu être résolue
La commande à exécuter est
dotnet mise à jour de base de données ef
travailler localement en utilisant les migrations visual studio sans problème, cependant, sur le serveur, je reçois l'erreur;
La version du package
Microsoft.EntityFrameworkCore.Tools.DotNet
n'a pas pu être résolue.
La version sur ma machine de développement de DotNet est
1.0.0La version sur mon serveur de DotNet est 1.0.1
Mon projet utilise le fichier .csproj (non project.json, ce qui n'est plus utilisé semble-t-il).
J'ai ajouté la référence au fichier csproj, mais quelle que soit la version, j'obtiens toujours l'erreur ci-dessus.
<ItemGroup>
<DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="1.0.0" />
<DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="1.0.1" />
</ItemGroup>
Mise à jour
Fondamentalement j'ai essayé d'installer le Microsoft.EntityFrameworkCore.Tools.DotNet depuis la ligne de commande à l'aide NuGet:
C: \ Program Files (x86) \ Jenkins \ workspace \ api.XXX.com \ XXXProject> NuGet i nstall Microsoft.EntityFrameworkCore.Tools.DotNet
Ensuite, je reçois ce qui suit:
AVERTISSEMENT: L'installation a échoué. Rétablissement ... L'exécution des actions de nuget a pris 13.44 sec Le package 'Microsoft.EntityFrameworkCore.Tools.DotNet 1.0.0' a un type de package 'D otnetCliTool' qui n'est pas pris en charge par le projet 'C: \ Program Files (x86) \ Jenkins \ w orkspace \ api.XXX.com \ XXXProject'.`
Ensuite, si je lance la commande ef dotnet, je reçois ceci:
C: \ Program Files (x86) \ Jenkins \ espace de travail \ api.desully.com \ deSullyAPI_Core> dotnet base de données de mise à jour ef
La version pour le paquet
Microsoft.EntityFrameworkCore.Tools.DotNet
n'a pas pu être résolue.
Mise à jour # 2
J'ai remarqué que ma machine dev a différentes versions du SDK dans ce que la version sur le serveur
Je suppose que le problème est que 1.0.1 n'a pas Microsoft.EntityFramework Core.Tools.DotNet dedans? N'est-il pas étrange que l'ancienne version fait?
Mise à jour 3
Alors FYI - je suis allé au Microsoft Site pour essayer de télécharger la version 1.0.0 du SDK (car il ne semble pas être installé sur mon serveur). Malheureusement, le site MS semble forcer me nourrir la version 1.0.1 (qui ne contient pas les trucs EF dont j'ai besoin?).
J'ai essayé de copier le répertoire 1.0.0 de ma boîte de dev au serveur de production, mais cela n'a pas semblé fonctionner. Qu'est-ce que j'oublie ici?
J'essayais juste d'utiliser des nombres différents - mais aussi le même problème pour 1.0.0. – footose
Alors s'il vous plaît fournir plus de détails: quels outils/commandes sont exécutées? Quel est le message d'erreur exact? etc –
mis à jour le fil. Désolé, légèrement nouveau ici. – footose