iasyncenumerable相关内容
我当前有一个Web API, 使用存储库中的FromSqlRaw(...).ToListAsync()提取一行数据 通过控制器将此数据作为Ok(data.ToArray())作为Task>>返回。 现在我想知道是否应该或可以使用IAsyncEnumerable作为返回类型。我们的想法是在存储库和控制器中使用它。但是,
..
Queue 和 ConcurrentQueue 都实现 IEnumerable 但不实现 IAsyncEnumerable.NuGet 上是否有实现 IAsyncEnumerable 的标准类或类,这样,如果队列为空,则 MoveNextAsync 的结果直到将下一个内容添加到排队? 解决方案 如果您使用的是 .NET Core 平台,则至少有两个内置选项: System.Threa
..
我正在尝试使用 C# 8,一种似乎特别有用的方法是 Task.WhenAll 返回 IAsyncEnumerable.此方法应在任务结果可用时立即流式传输任务结果,因此将其命名为 WhenAll 没有多大意义.WhenEach 听起来更合适.该方法的签名是: public static IAsyncEnumerableWhenEach(Task[] 个任务); 这个方法可以这样使用: var
..
常规迭代器块(即“yield return")是否与“async"和“await"不兼容? 这很好地说明了我要做什么: async Task>方法(字符串 [] 字符串){//我想将单个结果组合到最终结果中,所以我使用了 SelectManyvar finalResult = UrlStrings.SelectMany(link =>//我有一个 Urlstring 集合await Url
..
我想知道是否有办法通过 Source 对象创建 IAsyncEnumerable 或 IAsyncEnumerator,而不是像 TaskCompletionSource 允许一个人为任务做.特别是,TaskCompletionSource 可以像任何其他参数一样传递. 也许是这样的: public class AsyncEnumerables {公共任务处理程序任务 { 获取;放;}公共
..
我有以下方法可以从 http 流中读取 csv 文档 public async IAsyncEnumerableGetLines([EnumeratorCancellation] CancellationToken 取消令牌){HttpResponseMessage 响应 = GetResponse();使用 var responseStream = await response.Content
..
第一个功能旨在使linq能够安全地并行执行lambda函数(甚至是异步void的函数). 因此您可以进行collection.AsParallel().ForAllASync(async x => await x.Action). 第二个功能旨在使您能够并行组合和执行多个IAsyncEnumerable,并尽快返回其结果. 我有以下代码: 公共静态异步任务ForAllAsync
..
因此在C#8中,我们添加了 IAsyncEnumerable 接口. 如果我们有一个普通的 IEnumerable ,我们可以制作一个 List 或几乎我们想要的其他任何集合.多亏了Linq. var range = Enumerable.Range(0,100);var list = range.ToList(); 现在我想将我的 IAsyncEnumerable 转换为 List
..
在使用 IEnumerable 时,有 System.Linq 命名空间中的内置扩展方法,例如 Skip ,在哪里和选择一起使用. 当Microsoft在C#8中添加 IAsyncEnumerable 时,他们是否还添加了新的Linq方法来支持此功能? 我当然可以自己实现这些方法,或者找到一些可以做到这一点的程序包,但是我更喜欢使用一种语言标准的方法. 解决方案 在 S
..
我有一个这样编写的接口: 公共接口IItemRetriever{公共IAsyncEnumerableGetItemsAsync();} 我想编写一个不返回任何项目的空实现,如下所示: 公共类EmptyItemRetriever:IItemRetriever{公共IAsyncEnumerableGetItemsAsync(){//如果什么都不做,我该怎么办
..
我在测试C#8.0功能时遇到了IAsyncEnumerable.我从Anthony Chu( https://anthonychu.ca/post/async-streams-dotnet-core-3-iasyncenumerable/).它是异步流,并替代了 Task> //数据访问层.公共异步IAsyncEnumerableGetAll
..
我具有以下函数,该函数以运行 System.Diagnostics.Process 的结果作为异步流返回标准输出数据.该方法中当前的所有操作均按预期进行.我可以在 await foreach()循环中调用它,并获得由外部exe生成的每一行输出. 私有静态异步IAsyncEnumerableProcessAsyncStream(ProcessStartInfo processSt
..
我想知道是否有一种方法可以通过Source对象(类似于 TaskCompletionSource 允许您执行某项任务.特别是, TaskCompletionSource 可以像其他任何参数一样传递. 也许是这样的: 公共类AsyncEnumerables {公共任务HandlerTask {放;}公共异步TaskParentMethod(){var source = ne
..
函数需要返回 Task> 在这两个选项之后都返回 Task> ,哪个效率更高?这里有什么标准的方法吗? 选项1: Task>GetRecords(){返回DbContext.Set .Where(predicate).ToListAsync();} 选项2: Task
..
正如标题所述,我必须执行以下功能: 公共异步IAsyncEnumerableGetByPipeline(intpipelineId,[EnumeratorCancellation] CancellationToken cancellingToken =默认值){等待foreach(context.Jobs.Where(job => job.Pipeline.Id == pipelin
..
我们最近将使用 Dapper 的ASP.NET Core API迁移到了.NET Core 3.1.迁移后,我们觉得有机会将C#8 中的最新 IAsyncEnumerable 功能用于我们的一个端点. 这是更改之前的伪代码: 公共异步任务>GetItems(int id){var reader =等待_connection.QueryMultiple
..
我有以下方法,可从http流中读取csv文档 公共异步IAsyncEnumerableGetLines([EnumeratorCancellation] CancellationToken cancelledToken){HttpResponseMessage response = GetResponse();使用var responseStream =等待response.Con
..
我一直在使用Blazor和C#8.0中的IAsyncEnumerable功能.是否可以使用IAsyncEnumerable并在Razor页面中等待以逐步显示带有数据的标记? 示例服务: private static readonly string[] games = new[] { "Call of Duty", "Legend of Zelda", "Super Mario 64"
..
Queue和ConcurrentQueue都实现IEnumerable,但不实现IAsyncEnumerable.在NuGet上是否有一个实现IAsyncEnumerable的标准类或标准类,如果队列为空,则MoveNextAsync的结果要等到下一个添加到队列后才能完成? 解决方案 如果使用的是.NET Core平台,则至少有两个内置选项: System.Threading.Tas
..
在ASP.NET Web API项目中探索IAsyncEnumerable时遇到了一个有趣的行为. 考虑以下代码示例: // Code Sample 1 [HttpGet] public async IAsyncEnumerable GetAsync() { for (int i = 0; i
..