无法使用.NET Core 3、Preview 4编译C#8

无法使用.NET Core 3、Preview 4编译C#8,c#,visual-studio,.net-core,c#-8.0,C#,Visual Studio,.net Core,C# 8.0,我目前正在使用.NET Core 3、Preview 4和Visual Studio 2019版本16.0.2 以下是我的.NET核心项目的.csproj文件的内容: <Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <OutputType>Exe</OutputType> <TargetFramework>netcoreapp3.0</TargetFrame

我目前正在使用.NET Core 3、Preview 4和Visual Studio 2019版本16.0.2

以下是我的.NET核心项目的
.csproj
文件的内容:

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp3.0</TargetFramework>
    <LangVersion>8.0</LangVersion>
  </PropertyGroup>

</Project>
但是,它不会编译:

如您所见,编译器显示错误消息“意外令牌”


要在我的.NET核心项目中使用C#8语言功能,我应该怎么做?

我禁用了ReSharper,问题消失了。

如果在.csproj中的PropertyGroup中添加“enable in the PropertyGroup?”会发生什么?@mcalex不幸的是,您的建议不起作用——我看到了完全相同的错误消息:-(@mcalex请注意,在VS 16.1中,NullableContextOptions属性已重命名为Nullable。
public static string RockPaperScissors(string first, string second)
=> (first, second) switch
{
    ("rock", "paper") => "rock is covered by paper. Paper wins.",
    ("rock", "scissors") => "rock breaks scissors. Rock wins.",
    ("paper", "rock") => "paper covers rock. Paper wins.",
    ("paper", "scissors") => "paper is cut by scissors. Scissors wins.",
    ("scissors", "rock") => "scissors is broken by rock. Rock wins.",
    ("scissors", "paper") => "scissors cuts paper. Scissors wins.",
    (_, _) => "tie"
};