Asp.NetCore 1.1->2.0 迁移错误 - 未定义或导入“System.Object”

Asp.NetCore 1.1->2.0 Migration Error - `System.Object' is not defined or imported

我有一个项目一直在搞乱并向其添加功能,它是 aspnet core 1.1。我正在将其迁移到 2.0。

我将 Visual Studio 用于 Mac,它是最新的。

我正在关注此文档:

https://docs.microsoft.com/en-us/aspnet/core/migration/1x-to-2x/

我得到的确切错误是:

The predefined type `System.Object' is not defined or imported

我找到了答案:

在 Mac 的 VS 中,它没有让我进入为项目选择目标框架的菜单。这通常通过右键单击项目并选择 "properties."

打开

VS for Mac 没有显示这个。

在我的 iMac 上使用我的 windows 安装后,我找到菜单并看到 AspNetCore2.0 未列出(但 1.0 和 1.1 列出)。还有另一个选项可以安装更多。这导致我:

https://www.microsoft.com/net/targeting?utm_source=getdotnetsdk&utm_medium=referral

在此页面上,有适用于 macOS 和 windows 64 位的 AspNet Core 2.0 的 SDK。你需要安装这些,然后它就会构建。

visual studio 并不表示您缺少为您要构建的项目选择的框架(如其配置文件中所定义)这一事实是荒谬的。他们需要解决这个问题,以避免出现这些令人头疼的问题。我的印象是不需要它,因为 2.0 的 NUGET 包拥有所有这些。