如何在 EF Core 中启用运行时脚手架

How to enable runtime scaffolding in EF Core

使用 Npgsql EF Core 提供程序创建动态 ASP.NET MVC EF Core 应用程序。

我尝试按照

中所述实施运行时脚手架

https://medium.com/@zaikinsr/roslyn-ef-core-runtime-dbcontext-constructing-285a9d67bc87

在项目.config 文件中

  <PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="5.0.2">
  <PrivateAssets>all</PrivateAssets>
  <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>

改为

<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="5.0.2"/>

之后黄色警告图标出现在 Visual Studio Solution Explore Dependecies 树中:

构建和包管理器 windows 不包含任何警告。 如何找到与此图标相关的警告消息? 如何解决这个问题?

在运行时使用脚手架的正确方法是什么?

当我在 Asp Net Core 3.1 MVC 项目中尝试你的步骤时,我没有遇到与黄色图标相同的情况。

请尝试以下步骤:

  1. clean nuget caches先删除或者直接删除C:\Users\Administrator\.nuget\packages.

    下的所有文件

    然后,关闭VS,删除解决方案文件夹下的.vs隐藏文件夹,项目的binobj 文件夹。

    之后,重新启动您的项目以再次测试。

  2. 在项目Properties下添加dotnet restore-->Build Events-->预构建事件命令行,然后构建您的项目以再次测试。

  3. 创建一个新的Asp Net Core项目再次测试。