如何使用 .NET 6 预览版 7 中的 IAdditionOperators<,>?

How can I use IAdditionOperators<,,> from .NET 6 preview 7?

我已经成功安装了 .NET 6 Preview 7。我可以访问 System.IAdditionOperators<,,>。我的问题是,当我尝试实现接口时,它不需要我定义 + 运算符。

我的项目文件:

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

  <PropertyGroup>
    <TargetFramework>net6.0</TargetFramework>
  </PropertyGroup>
  <PropertyGroup>
    <EnablePreviewFeatures>true</EnablePreviewFeatures>
    <LangVersion>preview</LangVersion>
    <TargetFramework>net6.0</TargetFramework>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="System.Runtime.Experimental" Version="6.0.0-preview.7.21377.19" />
  </ItemGroup>

</Project>

我唯一的class:

using System;

namespace TestCode
{
    public class Foo:IAdditionOperators<Foo,Foo,Foo>
    {
    }
}

代码编译(它不应该!)即使我没有实现 IAdditionOperators<Foo,Foo,Foo>。如何让它强制我实施 + 运算符?

我已经下载了SDK,并Visual Studio更新到16.11.4版本。我已经选中了“使用 .NET SDK 的预览”框并重新启动 Visual Studio。我还需要做什么?

要使编译失败,您需要从终端使用 dotnet build 或安装 VS 2022 Preview(我对 遇到了同样的问题)。至于VS 2019编译的代码—— 当您尝试启动您的应用程序时应该会在运行时失败。