Недавно мне сообщили, что различные методы расширения Linq (такие как Where
, Select
и т.д.) возвращают IEnumerable<T>
, который также оказывается IDisposable
. Нижеследующее оценивается как True
new int[2] {0,1}.Select(x => x*2) is IDisposable
Нужно ли мне удалять результаты выражения Where
?
Всякий раз, когда я вызываю метод, возвращающий IEnumerable<T>
, могу ли я (потенциально) принять ответственность за вызов, когда я закончил с ним?