Wenn ich eine Migration zu meinem Projekt hinzufügen möchte, habe ich folgende Fehlermeldung erhalten:
dotnet: Keine ausführbare Datei gefunden, die den passenden Befehl "dotnet-ef" gefunden hat
Um dies zu beheben, füge ich das folgende Paket hinzu, bekomme aber immer noch den gleichen Fehler.
Microsoft.EntityFrameworkCore.Design(2.0.0)
Microsoft.EntityFrameworkCore.Tools.DotNet(2.0.0)
Ich habe eine Lösung gefunden, aber diese basiert auf .net-core-1
und in .net-core-2
wir keine project.json
Datei.
aktualisieren:
Hier ist meine .csproj-Datei:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netcoreapp2.0</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Hosting" Version="2.0.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="2.0.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="2.0.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.InMemory" Version="2.0.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="2.0.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="2.0.0" />
<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="2.0.0" />
</ItemGroup>
<ItemGroup>
<DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="2.0.0" />
</ItemGroup>
<ItemGroup>
<Reference Include="Microsoft.Extensions.Configuration">
<HintPath>C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.extensions.configuration\2.0.0\lib\netstandard2.0\Microsoft.Extensions.Configuration.dll</HintPath>
</Reference>
</ItemGroup>
</Project>
Damit dotnet ef
funktioniert, müssen Sie dem .csproj
wie folgt ein DotNetCliToolReference
Element hinzufügen:
<DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="2.0.0" />
Dies muss in einer ItemGroup
, etwa so:
<ItemGroup>
<DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="2.0.0" />
</ItemGroup>
Sie müssen auch sicherstellen, dass Sie dotnet ef
vom selben Speicherort wie die .csproj
Datei .csproj
.