我正在使用Visual Studio 2017开发一个Web应用程序(Asp.net Core 2.0 MVC),然后我转到Visual Studio 2019。 然后我将目标框架从.NET Core 2.0更改为.NET Core 2.2。 之后,我使用(Scaffold-DbContext)命令从数据库创建模型。
然后我按照后续步骤操作:
- 右键单击控制器文件夹。
- 加。
- 新建脚手架项目。
- 带有视图的 MVC 控制器,使用实体框架。
- 选择模型、数据库上下文、控制器名称。
- 加。
然后我得到这个 错误
这是 .csproj 文件的一部分:
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.All" Version="2.2.5" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="3.0.0-preview5.19227.1" PrivateAssets="All" />
<PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="3.0.0-preview5-19264-04" PrivateAssets="All" />
</ItemGroup>
<ItemGroup>
<DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="2.0.1" />
<DotNetCliToolReference Include="Microsoft.Extensions.SecretManager.Tools" Version="2.0.0" />
<DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="2.0.2" />
</ItemGroup>
如果您需要任何进一步的信息,请告诉我。
您不应该在看起来像 2.2 版应用中使用Microsoft.EntityFrameworkCore.Tools
或Microsoft.VisualStudio.Web.CodeGeneration.Design
的 3.0.0-preview5.19227.1 版本包,您需要使用这些包的 2.2.x 版本。
尝试将版本更改为以下内容:
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.All" Version="2.2.5" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="2.2.4" PrivateAssets="All" />
<PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="2.2.3" PrivateAssets="All" />
</ItemGroup>