Если я запускаю dotnet ef add testmigration
Я получаю это предупреждение: The EF Core tools version '2.1.0-rtm-30799' is older than that of the runtime '2.1.1-rtm-30846'. Update the tools for the latest features and bug fixes.
The EF Core tools version '2.1.0-rtm-30799' is older than that of the runtime '2.1.1-rtm-30846'. Update the tools for the latest features and bug fixes.
Поэтому я проверил файл csproj:
<ItemGroup>
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="2.1.1" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="2.1.1" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="2.1.1" />
<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="2.1.1" />
</ItemGroup>
Что выглядит правильно для меня, версия 2.1.1. Поэтому я проверил документы, здесь
И они предполагают, что для ввода инструментов в csproj необходимо иметь этот пакет:
<ItemGroup>
<DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="2.1.1" />
</ItemGroup>
Теперь dotnet restore
в dotnet restore
жалуется, что:
warning: The tool 'Microsoft.EntityFrameworkCore.Tools.DotNet' is now included in the.NET Core SDK. Information on resolving this warning is available at (https://aka.ms/dotnetclitools-in-box).
И dotnet ef --version
прежнему отображает старый.
Итак, следующее, что я делаю, это удалить запись в csproj
вообще, теперь dotnet ef
все еще работает, но все же дает мне старую версию.
Поэтому я решил, что как-то должен обновить глобальные инструменты dotnet для EF. Но список "dotnet tools -g" не дает мне никаких результатов.
Все очень запутывают.
Откуда взялась старая версия, как мне ее избавиться/обновить?