Microsoft.Bcl.AsyncInterfaces 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.

Showing the top 20 packages that depend on Microsoft.Bcl.AsyncInterfaces.

Packages Downloads
System.Text.Json
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. Commonly Used Types: System.Text.Json.JsonSerializer System.Text.Json.JsonDocument System.Text.Json.JsonElement System.Text.Json.Utf8JsonWriter System.Text.Json.Utf8JsonReader When using NuGet 3.x this package requires at least version 3.4.
1,408
Microsoft.Extensions.Hosting.Abstractions
Hosting and startup abstractions for applications.
1,314
Microsoft.Extensions.Hosting.Abstractions
Hosting and startup abstractions for applications.
1,259
Microsoft.Extensions.DependencyInjection.Abstractions
Abstractions for dependency injection. Commonly Used Types: Microsoft.Extensions.DependencyInjection.IServiceCollection
1,084
Microsoft.Extensions.DependencyInjection
Default implementation of dependency injection for Microsoft.Extensions.DependencyInjection.
1,056
System.Text.Json
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. Commonly Used Types: System.Text.Json.JsonSerializer System.Text.Json.JsonDocument System.Text.Json.JsonElement System.Text.Json.Utf8JsonWriter System.Text.Json.Utf8JsonReader When using NuGet 3.x this package requires at least version 3.4.
1,032
Microsoft.Extensions.DependencyInjection.Abstractions
Abstractions for dependency injection. Commonly Used Types: Microsoft.Extensions.DependencyInjection.IServiceCollection
979
System.Text.Json
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.
927
StackExchange.Redis
High performance Redis client, incorporating both synchronous and asynchronous usage.
862
System.Text.Json
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.
857
Microsoft.Extensions.DependencyInjection.Abstractions
Abstractions for dependency injection. Commonly Used Types: Microsoft.Extensions.DependencyInjection.IServiceCollection
838
Autofac
Autofac is an IoC container for Microsoft .NET. It manages the dependencies between classes so that applications stay easy to change as they grow in size and complexity.
832
Microsoft.Extensions.DependencyInjection
Default implementation of dependency injection for Microsoft.Extensions.DependencyInjection.
816
System.Text.Json
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.
760
Microsoft.Extensions.DependencyInjection.Abstractions
Abstractions for dependency injection. Commonly Used Types: Microsoft.Extensions.DependencyInjection.IServiceCollection
710
Microsoft.Extensions.DependencyInjection
Default implementation of dependency injection for Microsoft.Extensions.DependencyInjection.
598
Microsoft.Extensions.DependencyInjection.Abstractions
Abstractions for dependency injection. Commonly Used Types: Microsoft.Extensions.DependencyInjection.IServiceCollection
571
Microsoft.Extensions.DependencyInjection.Abstractions
Abstractions for dependency injection. Commonly Used Types: Microsoft.Extensions.DependencyInjection.IServiceCollection
553
System.Text.Json
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. Commonly Used Types: System.Text.Json.JsonSerializer System.Text.Json.JsonDocument System.Text.Json.JsonElement System.Text.Json.Utf8JsonWriter System.Text.Json.Utf8JsonReader
545
Npgsql
Npgsql is the open source .NET data provider for PostgreSQL.
462

https://go.microsoft.com/fwlink/?LinkID=799421

.NET Framework 4.6.2

.NET Standard 2.0

.NET Standard 2.1

  • No dependencies.

Version Downloads Last updated
8.0.0 94 12/07/2024
7.0.0 39 06/03/2024
6.0.0 583 10/31/2024
5.0.0 20 12/21/2024
1.1.0 661 06/03/2024
1.0.0 1,385 05/31/2024