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