您的目标项目“XXX”未引用 EntityFramework。这个包是必需的

gum*_*mby 7 sqlite entity-framework-core ef-core-3.0

任何人都可以指出我出错的方向。我正在尝试使用 SQLite 迁移以在 EFCore 上工作(控制台应用程序 .NET Core 3.1)

运行诸如 enable-migrations 或 update-database 之类的任何命令都会出现错误;

您的目标项目“XXX”未引用 EntityFramework。此包用于 Entity Framework Core Tools 工作。确保您的目标项目正确,安装包,然后重试。

如果我使用 EFCore,需要 EntityFramework 似乎有点奇怪?

 <PackageReference Include="Microsoft.EntityFrameworkCore" Version="3.1.0" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.Abstractions" Version="3.1.0" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="3.1.0">
      <PrivateAssets>all</PrivateAssets>
      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
    </PackageReference>
    <PackageReference Include="Microsoft.EntityFrameworkCore.Relational" Version="3.1.0" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="3.1.0" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="3.1.0">
      <PrivateAssets>all</PrivateAssets>
      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
    </PackageReference>
Run Code Online (Sandbox Code Playgroud)

noo*_*mer 3

嗯,这是一个奇怪的解决方案,令我惊讶的是它竟然有效!

只需从 VS 安装程序更新 Visual Studio 并重新启动即可。这将删除所有不必要的软件包,重新安装软件包将解决您的 EF 和 EF 核心软件包冲突。然后运行迁移,您将看到错误消失。

希望这可以帮助。