MongoDB.Driver.Linq.AsyncEnumerable
2.15.4
dotnet add package MongoDB.Driver.Linq.AsyncEnumerable --version 2.15.4
NuGet\Install-Package MongoDB.Driver.Linq.AsyncEnumerable -Version 2.15.4
<PackageReference Include="MongoDB.Driver.Linq.AsyncEnumerable" Version="2.15.4" />
paket add MongoDB.Driver.Linq.AsyncEnumerable --version 2.15.4
#r "nuget: MongoDB.Driver.Linq.AsyncEnumerable, 2.15.4"
// Install MongoDB.Driver.Linq.AsyncEnumerable as a Cake Addin #addin nuget:?package=MongoDB.Driver.Linq.AsyncEnumerable&version=2.15.4 // Install MongoDB.Driver.Linq.AsyncEnumerable as a Cake Tool #tool nuget:?package=MongoDB.Driver.Linq.AsyncEnumerable&version=2.15.4
MongoDB.Driver.Linq.AsyncEnumerable
Unofficial IAsyncEnumerable support for MongoDB C# Driver.
Provides ToAsyncEnumerable()
extensions for MongoDB IAsyncCursor
and IAsyncCursorSource
.
Asynchronous enumeration is implemeted so that the iterator fetches documents from database to memory one batch at time.
The size of the batch can be controller by BatchSize
property of e.g. AggregateOptions
or FindOptions
.
Usage
- Include types in
MongoDB.Driver.Linq
namespace byusing MongoDB.Driver.Linq
- Call the
ToAsyncEnumerable()
extension for eitherIAsyncCursor
orIAsyncCursorSource
- Asynchronously iterate through elements returned by
ToAsyncEnumerable()
Enumerating results of Find()
using MongoDB.Bson;
using MongoDB.Driver;
using MongoDB.Driver.Linq;
var client = new MongoClient();
var database = client.GetDatabase("ExampleDatabase");
var collection = database.GetCollection<BsonDocument>("ExampleCollection");
await foreach (var document in collection.Find(_ => true).ToAsyncEnumerable())
{
Console.WriteLine(document.ToString());
}
Enumerating results of Aggregate()
by fetching documents in batches of 1000 documents
using MongoDB.Bson;
using MongoDB.Driver;
using MongoDB.Driver.Linq;
var client = new MongoClient();
var database = client.GetDatabase("ExampleDatabase");
var collection = database.GetCollection<BsonDocument>("ExampleCollection");
var options = new AggregateOptions { BatchSize = 1000 };
await foreach (var document in collection.Aggregate(options).ToAsyncEnumerable())
{
Console.WriteLine(document.ToString());
}
Product | Versions 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 | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.1 is compatible. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.1
- MongoDB.Driver (>= 2.15.0)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on MongoDB.Driver.Linq.AsyncEnumerable:
Package | Downloads |
---|---|
DataExplorer.MongoDb
Library featuring an opinionated, reusable data access layer for MongoDb based on MongoDB.Entities. |
|
Jubatus.WebApi.Extensions
Colección de extensiones para WebApis .NET 8 |
GitHub repositories
This package is not used by any popular GitHub repositories.