首页 > 解决方案 > C# 7.3 中不提供“使用声明”功能。请使用语言版本 8.0 或更高版本 - 在一台机器上出错,但在另一台机器上工作

问题描述

在两台不同的机器上使用Visual Studio Enterprise 16.3.7时,一台构建良好,另一台机器抛出错误:

C# 7.3 中不提供“使用声明”功能。请使用 8.0 或更高版本的语言。

在此处输入图像描述

在此处输入图像描述

这可以通过按照此处建议的设置https://stackoverflow.com/a/48085575/3850405LangVersion在无工作机器上轻松解决,或者让 Visual Studio 像上面的打印屏幕一样自动修复它。.csproj

<LangVersion>8.0</LangVersion>

我无法理解的是为什么一台机器在没有这条线的情况下可以正常构建而.csproj另一台机器需要它?

标签: c#.net.net-4.6

解决方案


我收到了同样的错误,但我只是忘记包含

<LangVersion>8.0</LangVersion>

解决方案中所有.csproj 文件中的属性。以下是我当前的 c# 8 设置:

  <PropertyGroup>
    <TargetFramework>netcoreapp3.1</TargetFramework>
    <LangVersion>8.0</LangVersion>
    <Nullable>enable</Nullable>
    <NullableContextOptions>enable</NullableContextOptions>
  </PropertyGroup>

我发现以下文档在从核心 2.2 迁移到 3.x 时最有帮助:

MSDN 2.2 -> 3.0

MSDN 3.0 -> 3.1


推荐阅读