5

IAsyncEnumerable除了“What's New c# 8.0”文章中提到的一些信息之外,真的很难找到关于 . 尝试在启用了 netstandard 2.0 和 C# 8 的 Visual Studio 2019 中使用它,它确实可以识别该类,但我在构建时遇到大量错误:

在此处输入图像描述

4

4 回答 4

7

C# 8支持这些特性。但是,这不适用于 .Net 标准 2.0

IAsyncEnumerable 接口

适用于

.NET Core 3.0 预览版 3

.NET Standard 2.1 预览版

您将必须获得其中一个预览。

您可以在此处找到有关 .Net Core 3 预览版的更多信息

于 2019-04-24T03:02:05.523 回答
3

对于 .NET Standard 2.0,您应该安装 Microsoft.Bcl.AsyncInterfaces

https://www.nuget.org/packages/Microsoft.Bcl.AsyncInterfaces/

于 2020-09-30T07:01:07.150 回答
3

弗拉德的答案是正确的。

  1. 将 LangVersion 8.0 添加到所需的 Projects PropertGroup
  2. 添加 Microsoft.Bcl.AsyncInterfaces 作为 PackageReference

例如:MyDummyLib.csproj

<PropertyGroup>
    <TargetFrameworks>netstandard2.0;netstandard2.1</TargetFrameworks>
    <LangVersion>8.0</LangVersion>
    <AssemblyName>MyDummyLib</AssemblyName>
    <RootNamespace>MyDummyLib</RootNamespace>
    <GenerateAssemblyInfo>false</GenerateAssemblyInfo>
</PropertyGroup>

<ItemGroup Condition="'$(TargetFramework)'=='netstandard2.0'">
    <PackageReference Include="Microsoft.Bcl.AsyncInterfaces" Version="1.1.1" />
</ItemGroup>
于 2020-11-09T08:56:08.147 回答
0

看起来您需要以 .NET Standard 2.1 为目标,但它仍处于预览阶段。

https://docs.microsoft.com/en-us/dotnet/api/system.collections.generic.iasyncenumerable-1?view=netstandard-2.1

于 2019-04-24T03:03:53.870 回答