iasyncenumerable相关内容

我可以(或应该)在Web API控制器中使用IAsyncEnumerable<;T&>;而不是Task<;ActionResult<;IEnumerable<;T>;>;>;

我当前有一个Web API, 使用存储库中的FromSqlRaw(...).ToListAsync()提取一行数据 通过控制器将此数据作为Ok(data.ToArray())作为Task>>返回。 现在我想知道是否应该或可以使用IAsyncEnumerable作为返回类型。我们的想法是在存储库和控制器中使用它。但是, ..

如何实现一个高效的 WhenEach 来传输 IAsyncEnumerable 的任务结果?

我正在尝试使用 C# 8,一种似乎特别有用的方法是 Task.WhenAll 返回 IAsyncEnumerable.此方法应在任务结果可用时立即流式传输任务结果,因此将其命名为 WhenAll 没有多大意义.WhenEach 听起来更合适.该方法的签名是: public static IAsyncEnumerableWhenEach(Task[] 个任务); 这个方法可以这样使用: var ..
发布时间:2021-12-27 23:36:55 C#/.NET

IAsyncEnumerable 或 IAsyncEnumerator 的工厂

我想知道是否有办法通过 Source 对象创建 IAsyncEnumerable 或 IAsyncEnumerator,而不是像 TaskCompletionSource 允许一个人为任务做.特别是,TaskCompletionSource 可以像任何其他参数一样传递. 也许是这样的: public class AsyncEnumerables {公共任务处理程序任务 { 获取;放;}公共 ..
发布时间:2021-12-14 20:47:23 C#/.NET

当枚举器集合未强制转换为列表时,IAsyncEnumerator.Current返回null

第一个功能旨在使linq能够安全地并行执行lambda函数(甚至是异步void的函数). 因此您可以进行collection.AsParallel().ForAllASync(async x => await x.Action). 第二个功能旨在使您能够并行组合和执行多个IAsyncEnumerable,并尽快返回其结果. 我有以下代码: 公共静态异步任务ForAllAsync ..
发布时间:2021-05-29 21:53:57 C#/.NET

转换IAsyncEnumerable到列表

因此在C#8中,我们添加了 IAsyncEnumerable 接口. 如果我们有一个普通的 IEnumerable ,我们可以制作一个 List 或几乎我们想要的其他任何集合.多亏了Linq. var range = Enumerable.Range(0,100);var list = range.ToList(); 现在我想将我的 IAsyncEnumerable 转换为 List ..
发布时间:2021-05-15 19:34:44 C#/.NET

IAsyncEnumerable的Linq方法

在使用 IEnumerable 时,有 System.Linq 命名空间中的内置扩展方法,例如 Skip ,在哪里和选择一起使用. 当Microsoft在C#8中添加 IAsyncEnumerable 时,他们是否还添加了新的Linq方法来支持此功能? 我当然可以自己实现这些方法,或者找到一些可以做到这一点的程序包,但是我更喜欢使用一种语言标准的方法. 解决方案 在 S ..
发布时间:2021-04-18 20:30:47 C#/.NET

创建空的IAsyncEnumerable

我有一个这样编写的接口: 公共接口IItemRetriever{公共IAsyncEnumerableGetItemsAsync();} 我想编写一个不返回任何项目的空实现,如下所示: 公共类EmptyItemRetriever:IItemRetriever{公共IAsyncEnumerableGetItemsAsync(){//如果什么都不做,我该怎么办 ..
发布时间:2021-04-18 19:38:53 C#/.NET

如何使用2个数据源返回异步流

我具有以下函数,该函数以运行 System.Diagnostics.Process 的结果作为异步流返回标准输出数据.该方法中当前的所有操作均按预期进行.我可以在 await foreach()循环中调用它,并获得由外部exe生成的每一行输出. 私有静态异步IAsyncEnumerableProcessAsyncStream(ProcessStartInfo processSt ..
发布时间:2021-04-12 19:07:03 C#/.NET

IAsyncEnumerable或IAsyncEnumerator的工厂

我想知道是否有一种方法可以通过Source对象(类似于 TaskCompletionSource 允许您执行某项任务.特别是, TaskCompletionSource 可以像其他任何参数一样传递. 也许是这样的: 公共类AsyncEnumerables {公共任务HandlerTask {放;}公共异步TaskParentMethod(){var source = ne ..
发布时间:2021-04-12 18:51:01 C#/.NET

将IAsyncEnumerable与Dapper一起使用

我们最近将使用 Dapper 的ASP.NET Core API迁移到了.NET Core 3.1.迁移后,我们觉得有机会将C#8 中的最新 IAsyncEnumerable 功能用于我们的一个端点. 这是更改之前的伪代码: 公共异步任务>GetItems(int id){var reader =等待_connection.QueryMultiple ..
发布时间:2021-04-12 18:42:49 C#/.NET

是否有像Queue这样的C#类实现IAsyncEnumerable?

Queue和ConcurrentQueue都实现IEnumerable,但不实现IAsyncEnumerable.在NuGet上是否有一个实现IAsyncEnumerable的标准类或标准类,如果队列为空,则MoveNextAsync的结果要等到下一个添加到队列后才能完成? 解决方案 如果使用的是.NET Core平台,则至少有两个内置选项: System.Threading.Tas ..
发布时间:2020-09-13 06:32:54 C#/.NET