Всем салют, друзья!
У меня к вам вопрос, любите ли вы свой компьютер? А вы в курсе что помимо тех задач, которые вы еу подкидываете, он регулярно занимается чем попало, а вы даже не знаете об этом? Хватит...
Могие почему-то боятся делать перечислители (Enumerator) для своих коллекций, выставляя наружу внутренние массивы List или Dictionary. Чуть более смелые разработчики, желая сохранить инкапсуляцию, выставляют из сущностей IEnumerable или даже более правильный IReadOnlyCollection, делая свои коллекции приватными, но доступными через свойство. А вот если нам нужно что-то сделать перед передачей элемента коллекции из сущности, то добро пожаловать в LINQ: коллеги просто возвращают IEnumerable где начинают городить в возвращаемом свойстве что-то вроде _collection.Select(id => new Actor(conext, id)). Давайте не будем так делать...