Microsoft.Bcl.AsyncInterfaces 8.0.0

The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org. Prefix Reserved
There is a newer prerelease version of this package available.
See the version list below for details.
dotnet add package Microsoft.Bcl.AsyncInterfaces --version 8.0.0
NuGet\Install-Package Microsoft.Bcl.AsyncInterfaces -Version 8.0.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Microsoft.Bcl.AsyncInterfaces" Version="8.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Microsoft.Bcl.AsyncInterfaces --version 8.0.0
#r "nuget: Microsoft.Bcl.AsyncInterfaces, 8.0.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Microsoft.Bcl.AsyncInterfaces as a Cake Addin
#addin nuget:?package=Microsoft.Bcl.AsyncInterfaces&version=8.0.0

// Install Microsoft.Bcl.AsyncInterfaces as a Cake Tool
#tool nuget:?package=Microsoft.Bcl.AsyncInterfaces&version=8.0.0

About

As of C# 8, the C# language has support for producing and consuming asynchronous iterators. The library types in support of those features are available in .NET Core 3.0 and newer as well as in .NET Standard 2.1. This library provides the necessary definitions of those types to support these language features on .NET Framework and on .NET Standard 2.0. This library is not necessary nor recommended when targeting versions of .NET that include the relevant support.

Key Features

  • Enables the use of C# async iterators on older .NET platforms

How to Use

using System;
using System.Collections.Generic;
using System.Threading.Tasks;

internal static class Program
{
    private static async Task Main()
    {
        Console.WriteLine("Starting...");
        await foreach (var value in GetValuesAsync())
        {
            Console.WriteLine(value);
        }
        Console.WriteLine("Finished!");

        static async IAsyncEnumerable<int> GetValuesAsync()
        {
            for (int i = 0; i < 10; i++)
            {
                await Task.Delay(TimeSpan.FromSeconds(1));
                yield return i;
            }
        }
    }
}

Main Types

The main types provided by this library are:

  • IAsyncEnumerable<T>
  • IAsyncEnumerator<T>
  • IAsyncDisposable<T>

Additional Documentation

Feedback & Contributing

Microsoft.Bcl.AsyncInterfaces is released as open source under the MIT license. Bug reports and contributions are welcome at the GitHub repository.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 is compatible. 
.NET Framework net461 was computed.  net462 is compatible.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1.2K)

Showing the top 5 NuGet packages that depend on Microsoft.Bcl.AsyncInterfaces:

Package Downloads
Microsoft.Extensions.DependencyInjection.Abstractions The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org.

Abstractions for dependency injection. Commonly Used Types: Microsoft.Extensions.DependencyInjection.IServiceCollection

Microsoft.Extensions.DependencyInjection The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org.

Default implementation of dependency injection for Microsoft.Extensions.DependencyInjection.

Microsoft.Extensions.Logging The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org.

Logging infrastructure default implementation for Microsoft.Extensions.Logging.

Microsoft.Extensions.Hosting.Abstractions The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org.

Hosting and startup abstractions for applications.

System.Text.Json The ID prefix of this package has been reserved for one of the owners of this package by NuGet.org.

Provides high-performance and low-allocating types that serialize objects to JavaScript Object Notation (JSON) text and deserialize JSON text to objects, with UTF-8 support built-in. Also provides types to read and write JSON text encoded as UTF-8, and to create an in-memory document object model (DOM), that is read-only, for random access of the JSON elements within a structured view of the data. The System.Text.Json library is built-in as part of the shared framework in .NET Runtime. The package can be installed when you need to use it in other target frameworks.

GitHub repositories (364)

Showing the top 5 popular GitHub repositories that depend on Microsoft.Bcl.AsyncInterfaces:

Repository Stars
AvaloniaUI/Avalonia
Develop Desktop, Embedded, Mobile and WebAssembly apps with C# and XAML. The most popular .NET Foundation community project.
dotnet/roslyn
The Roslyn .NET compiler provides C# and Visual Basic languages with rich code analysis APIs.
BeyondDimension/SteamTools
🛠「Watt Toolkit」是一个开源跨平台的多功能 Steam 工具箱。
microsoft/semantic-kernel
Integrate cutting-edge LLM technology quickly and easily into your apps
dotnet/runtime
.NET is a cross-platform runtime for cloud, mobile, desktop, and IoT apps.
Version Downloads Last updated
9.0.0-preview.2.24128.5 2,437 3/12/2024
9.0.0-preview.1.24080.9 21,388 2/13/2024
8.0.0 7,144,551 11/14/2023
8.0.0-rc.2.23479.6 61,353 10/10/2023
8.0.0-rc.1.23419.4 60,544 9/12/2023
8.0.0-preview.7.23375.6 26,004 8/8/2023
8.0.0-preview.6.23329.7 28,811 7/11/2023
8.0.0-preview.5.23280.8 50,848 6/13/2023
8.0.0-preview.4.23259.5 73,620 5/16/2023
8.0.0-preview.3.23174.8 43,356 4/11/2023
8.0.0-preview.2.23128.3 150,577 3/14/2023
8.0.0-preview.1.23110.8 20,192 2/21/2023
7.0.0 50,259,811 11/7/2022
7.0.0-rc.2.22472.3 35,819 10/11/2022
7.0.0-rc.1.22426.10 35,734 9/14/2022
7.0.0-preview.7.22375.6 30,470 8/9/2022
7.0.0-preview.6.22324.4 19,217 7/12/2022
7.0.0-preview.5.22301.12 21,294 6/14/2022
7.0.0-preview.4.22229.4 37,822 5/10/2022
7.0.0-preview.3.22175.4 24,828 4/13/2022
7.0.0-preview.2.22152.2 21,291 3/14/2022
7.0.0-preview.1.22076.8 22,183 2/17/2022
6.0.2-mauipre.1.22102.15 16,762 2/15/2022
6.0.2-mauipre.1.22054.8 152,491 1/19/2022
6.0.0 175,478,829 11/8/2021
6.0.0-rc.2.21480.5 64,501 10/12/2021
6.0.0-rc.1.21451.13 73,384 9/14/2021
6.0.0-preview.7.21377.19 38,543 8/10/2021
6.0.0-preview.6.21352.12 26,161 7/14/2021
6.0.0-preview.5.21301.5 60,085 6/15/2021
6.0.0-preview.4.21253.7 33,670 5/24/2021
6.0.0-preview.3.21201.4 67,204 4/8/2021
6.0.0-preview.2.21154.6 66,595 3/11/2021
6.0.0-preview.1.21102.12 77,010 2/12/2021
5.0.0 212,102,529 11/9/2020
5.0.0-rc.2.20475.5 91,819 10/13/2020
5.0.0-rc.1.20451.14 196,560 9/14/2020
1.1.1 400,034,547 5/12/2020
1.1.0 276,934,314 12/3/2019
1.1.0-preview3.19551.4 430,539 11/13/2019
1.1.0-preview2.19523.17 70,683 11/1/2019
1.1.0-preview1.19504.10 75,867 10/15/2019
1.0.0 369,678,973 9/23/2019
1.0.0-rc1.19456.4 85,855 9/16/2019
1.0.0-preview9.19421.4 144,434 9/4/2019
1.0.0-preview9.19416.11 704 9/4/2019
1.0.0-preview8.19405.3 89,684 8/13/2019
1.0.0-preview7.19362.9 141,491 7/23/2019
1.0.0-preview6.19303.8 31,841 6/12/2019
1.0.0-preview6.19264.9 917 9/4/2019
1.0.0-preview6.19259.10 21,538 5/10/2019