【发布时间】:2019-12-04 12:26:14
【问题描述】:
我已将现有的 asp.net mvc 应用程序从 netcoreapp3.0 更新到 netcoreapp3.1,以及所有引用的包。项目设置有目标框架,我的电脑安装了SDK
<TargetFramework>netcoreapp3.1</TargetFramework>
我在使用 C# coaslescing assignment feature ??= 的地方出现错误,在更新之前它可以正常工作。 @SebastianHofmann 确认其他 C#8 功能也不起作用。
Error CS8370 Feature 'coalescing assignment' is not available in C# 7.3.
Please use language version 8.0 or greater.
According to MSFTnetcoreapp3.1 应该使用 C#8 并且确实必须
我刚刚看到的高级项目设置已在 Visual Studio 2019 (16.3.10) 中禁用
我可以切换回 3.0 并再次编译
【问题讨论】:
-
C# 8.0 需要 Visual Studio 2019
-
我正在使用 Visual Studio 2019
-
将版本设置为 .NET Core 3.1 时遇到同样的错误
-
我已将 ??= 添加到现有的 Core 3 项目并且没有错误,然后使用最新补丁 (V 4.7.03062) 更新 VS 以获取 3.1,然后也将项目升级到 3.1没有错误。我能得到你的错误的唯一方法是将项目降级到 2.1。是否值得在您的 VS 上运行修复/更新。
-
@DavidHinchliffe 现场。我还没有看到 Visual Studio 的新版本,应该对此有所了解。仅当您不更新时,我的问题才会引发错误。回答,我会接受,因为你说得对。
标签: c# asp.net-mvc c#-8.0 netcoreapp3.0 netcoreapp3.1