Есть ли причина не использовать «доходность»? при возврате IEnumerable?

Простой пример - у вас есть метод или свойство, которое возвращает IEnumerable, а вызывающий объект выполняет итерацию в цикле foreach (). Следует ли всегда использовать yield return в своем методе IEnumerable? Есть ли причина не делать этого? Хотя я понимаю, что это не всегда может быть необходимо или даже «лучше» (может быть, это очень небольшая коллекция, например), есть ли причина активно избегать этого?

Часть кода, которая заставила меня задуматься об этом, была написана мной функцией, очень похожей на принятый ответ в этой цепочке - Как мне перебрать диапазон дат ?

22
задан Community 23 May 2017 в 10:30
поделиться