Если MVC будет использовать сервисы по умолчанию вы теряете возможность менять их поведение.
Вы всегда должны знать как работает потребляющий фреймфорк, в данной модели вы можете повлиять на много больше вещей чем до этого, просто переопределяя нужные сервисы.
То есть пользователь должен будет в правильном порядке зарегистрировать все сервисы необходимые MVC и EF? https://github.com/aspnet/Mvc/blob/52a7c112e8c0369b4b1626d750fb3d5b43db65bd/src/Microsoft.AspNetCore.Mvc.Core/DependencyInjection/MvcCoreServiceCollectionExtensions.cs#L121
Мы работаем над тем чтобы расслабить некоторые требования, в частности требования к порядку элементов при возврате IEnumerable, из за которого и началось это обсуждение, и улучшить тесты на соответствие спецификации.
Вы всегда должны знать как работает потребляющий фреймфорк, в данной модели вы можете повлиять на много больше вещей чем до этого, просто переопределяя нужные сервисы.
Этот комментарий объясняет почему они зарегистрированы как transient, он относится к особенностям работы MVC, а не DI