Post #498
739
Статья про IAsyncEnumerable, но на очень неудачном примере - использование IQueryable. На мой взгляд сочетание IAsyncEnumerable и IQueryable - это категорический антипаттерн, благодаря которому по коду непредсказуемо расползается lifetime коннекшена и db datareader, который потребляет открытое соединение. Плюс сайд-эффекты, когда например у тебя в контексте http request используется scoped db context, и при обработке твоего результата async enumerable в итераторе снаружи какой-то потребитель захочет сделать запрос в БД (для чего-нибудь) - и будет удивлён, потому что ридер в коннекшене ещё открыт и занят вычитыванием данных. #dotnet
- 👍 6