97 votes

Impossible de trouver la commande 'dotnet ef'.

J'utilise .NET Core 2.0 sur Arch Linux / Visual Studio Code et j'essaie d'obtenir EF pour fonctionner, mais je continue à obtenir l'erreur :

Impossible de trouver la commande dotnet ef

J'ai cherché partout et aucune des suggestions n'a fonctionné.

Le résultat de l'exécution de 'dotnet ef' :

[wasiim@wasiim-PC WebApiServerApp]$ dotnet ef --help
Cannot find command 'dotnet ef', please run the following command to install

dotnet tool install --global dotnet-ef
[wasiim@wasiim-PC WebApiServerApp]$ dotnet tool list -g
Package Id            Version      Commands
---------------------------------------------------
dotnet-dev-certs      2.2.0        dotnet-dev-certs
dotnet-ef             2.2.3        dotnet-ef
[wasiim@wasiim-PC WebApiServerApp]$

Voici le résultat de 'dotnet --info', si cela peut vous aider :

[wasiim@wasiim-PC WebApiServerApp]$ dotnet --info
.NET Core SDK (reflecting any global.json):
 Version:   2.2.105
 Commit:    7cecb35b92

Runtime Environment:
 OS Name:     arch
 OS Version:
 OS Platform: Linux
 RID:         arch-x64
 Base Path:   /opt/dotnet/sdk/2.2.105/

Host (useful for support):
  Version: 2.2.3
  Commit:  6b8ad509b6

.NET Core SDKs installed:
  2.2.105 [/opt/dotnet/sdk]

.NET Core runtimes installed:
  Microsoft.NETCore.App 2.2.3 [/opt/dotnet/shared/Microsoft.NETCore.App]

To install additional .NET Core runtimes or SDKs:
  https://aka.ms/dotnet-download

Voici mon fichier .csproj :

<Project Sdk="Microsoft.NET.Sdk.Web">

  <PropertyGroup>
    <TargetFramework>netcoreapp2.2</TargetFramework>
  </PropertyGroup>

  <ItemGroup>
    <Folder Include="wwwroot\" />
  </ItemGroup>

  <ItemGroup>
    <PackageReference Include="Lucene.Net.Analysis.Common" Version="4.8.0-beta00005" />
    <PackageReference Include="Lucene.Net.QueryParser" Version="4.8.0-beta00005" />
    <PackageReference Include="Microsoft.AspNetCore.App" Version="2.2.5" />
   <PackageReference Include="Lucene.Net" Version="4.8.0-beta00005" />
    <PackageGroup Include="Microsoft.EntityFrameworkCore.SqlServer" Version="1.1.0" />
    <PackageReference Include="Microsoft.AspNetCore.Razor.Design" Version="2.2.0" PrivateAssets="All" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="2.2.4" />
    <DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="2.0.3" />

  </ItemGroup>

</Project>

1 votes

Est ~/.dotnet/tools dans votre $PATH ?

0 votes

@OmairMajid thaaanks it worked !!!!! vous êtes le vrai MVP homme. Si vous le postez comme réponse, je l'accepterai.

4voto

baruchiro Points 947

Parfois, lorsque vous installez une nouvelle version de dotnet sdk, il frappe le PATH .

Vous devez ajouter manuellement le dossier .dotnet/tools de votre répertoire d'origine a PATH .

4voto

Randy Slavey Points 300

En ce qui concerne la réparation du chemin :

Sachez que cela ajoute le chemin au PATH de l'utilisateur, et non au PATH de l'utilisateur. Système Variable d'environnement PATH. Lorsque vous lancez un "Developer Command Prompt" ou un "Developer PowerShell" à partir de Visual Studio, vous n'utilisez pas la variable d'environnement "PATH". Utilisateur variable de chemin. Vous devez l'ajouter à la variable Système également.

En outre, vous devrez redémarrer Visual Studio Code avant que le changement ne prenne effet.

2voto

Sam Watson Points 21

Pour tous ceux qui rencontrent ce problème sur JetBrains Rider, j'ai essayé toutes les solutions listées sur cette page et j'ai fini par entrer dans Visual Studio et exécuter la commande suivante dotnet tool install --global dotnet-ef --version 3.0.0 là, puis réouvert dans Rider et cela a fonctionné. fonctionne.

2voto

FlyingV Points 435

TL&DR : dotnet tool install -g dotnet-ef

Justification : Voir l'annonce pour ASP.NET Core 3 Preview 4, qui explique que cet outil n'est plus intégré et nécessite une installation explicite.

Référence : https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-3-0-preview-4/

1voto

JRamirez1992 Points 3

J'ai eu le même problème sur Ubuntu 20.04.1 avec le .net Core 5.0.0-rc.1 et la solution qui a fonctionné pour moi a été d'installer le fichier dotnet ef comme outil local

https://docs.microsoft.com/en-us/dotnet/core/tools/global-tools#install-a-local-tool

dotnet new tool-manifest
dotnet tool install  dotnet-ef --version 5.0.0-rc.1.20451.13

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X