ASP.NET Core возвращает IAsyncEnumerable<T> (стриминг ответа). Как корректно отменять перечисление при разрыве клиента?
👾 — Ничего не делать — отмена произойдёт автоматически
👍 — await foreach (var x in stream) { … } без токена
🥰 — await foreach (var x in stream.WithCancellation(HttpContext.RequestAborted)) { … }
⚡️ — Обернуть в Task.Run и ловить OperationCanceledException
🐸Библиотека задач по C#
Post #1009
1.36K
- 🥰 13