安装 .NET 6 后无法创建 EF 迁移

Ste*_*ler 2 entity-framework-core .net-core asp.net-core

我刚刚安装了 .NET 6 SDK 并更新了所有项目以使用 target net6.0,但是当我尝试使用该dotnet工具创建新的迁移时,我得到:

.csproj

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

  <PropertyGroup>
    <TargetFramework>net6.0</TargetFramework>
    <ImplicitUsings>enable</ImplicitUsings>
    <Nullable>enable</Nullable>
    <ApplicationIcon>assets-logo.ico</ApplicationIcon>
    <RootNamespace>LC.Assets</RootNamespace>
    <Authors>Stein Lundbeck</Authors>
    <Company>Lundbeck Consulting</Company>
    <Product>LC Assets</Product>
    <Copyright>2021</Copyright>
  </PropertyGroup>

  <ItemGroup>
    <Content Include="assets-logo.ico" />
  </ItemGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.EntityFrameworkCore" Version="6.0.0" />
  </ItemGroup>

  <ItemGroup>
    <ProjectReference Include="..\LC.Components.Core\LC.Components.Core.csproj" />
    <ProjectReference Include="..\LC.Components\LC.Components.csproj" />
  </ItemGroup>

</Project>
Run Code Online (Sandbox Code Playgroud)

无法找到任何兼容的框架版本 找不到框架“Microsoft.NETCore.App”版本“2.0.0”(x64)。

找到以下框架:
6.0.0,位于 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]

您可以通过安装指定的框架和/或SDK来解决该问题。

我已经将该dotnet-ef工具更新到版本 6.0.0,所以我不知道它仍然针对 2.0.0 版本。

工具“dotnet-ef”已成功从版本“5.0.4”更新到版本“6.0.0”。

有任何想法吗?

小智 5

我刚刚遇到了完全相同的问题。

我没有安装 Microsoft.NETCore.App 2.0.0,而是安装了 Entity Framework Core Design 包:

dotnet add package Microsoft.EntityFrameworkCore.Design
Run Code Online (Sandbox Code Playgroud)

它让我的错误消失了。

注意:在记住遵循 EF 入门指南(https://learn.microsoft.com/en-us/ef/core/get-started/overview/first-app?tabs=netcore-cli )后,我找到了解决方案)让我安装设计包,并且当我按照指南操作时没有抛出错误。