MongoAsyncEnumerableAdapter 1.0.0
dotnet add package MongoAsyncEnumerableAdapter --version 1.0.0
NuGet\Install-Package MongoAsyncEnumerableAdapter -Version 1.0.0
<PackageReference Include="MongoAsyncEnumerableAdapter" Version="1.0.0" />
<PackageVersion Include="MongoAsyncEnumerableAdapter" Version="1.0.0" />
<PackageReference Include="MongoAsyncEnumerableAdapter" />
paket add MongoAsyncEnumerableAdapter --version 1.0.0
#r "nuget: MongoAsyncEnumerableAdapter, 1.0.0"
#:package MongoAsyncEnumerableAdapter@1.0.0
#addin nuget:?package=MongoAsyncEnumerableAdapter&version=1.0.0
#tool nuget:?package=MongoAsyncEnumerableAdapter&version=1.0.0
MongoAsyncEnumerableAdapter
Provides an adapter from MongoDB's IAsyncCursor<TDocument> and IAsyncCursorSource<TDocument> to IAsyncEnumerable<T>
This allows plugging MongoDB's custom async iterators into the async LINQ ecosystem by wrapping IAsyncCursorSource<TDocument> or IAsyncCursor<TDocument> in an IAsyncEnumerable<T> implementation.
For example, iterating on a find result with await foreach:
IMongoCollection<Hamster> collection = // ...
IFindFluent<Hamster, Hamster> findFluent = collection.Find(hamster => hamster.Name == "bar");
await foreach (var hamster in findFluent.ToAsyncEnumerable())
{
Console.WriteLine(hamster.Age);
}
Or any other async LINQ operator:
IMongoCollection<Hamster> collection = // ...
int groupCount =
await collection.AsQueryable().
ToAsyncEnumerable().
GroupBy(hamster => hamster.Age).
CountAsync();
| 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. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.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 is compatible. net462 was computed. 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. |
-
.NETFramework 4.6.1
- MongoDB.Driver (>= 2.14.1)
- MoreAsyncLINQ (>= 1.0.0)
-
.NETStandard 2.0
- MongoDB.Driver (>= 2.14.1)
- MoreAsyncLINQ (>= 1.0.0)
-
.NETStandard 2.1
- MongoDB.Driver (>= 2.14.1)
- MoreAsyncLINQ (>= 1.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Breaking changes:
- Remove dependency on System.Linq.Async and replace with System.Linq.AsyncEnumerable.
See more: https://learn.microsoft.com/en-us/dotnet/core/compatibility/core-libraries/10.0/asyncenumerable