Um modelo anêmico é simplesmente um contêiner de dados. Não contém comportamento. (Isso pode realmente ser considerado uma coisa boa no paradigma funcional.) O oposto de um modelo anêmico não é um modelo injetado cheio de serviços de domínio. Você está descrevendo dois extremos - ambos são ruins.
Se você tem um modelo anêmico, não está adotando totalmente o que o OOP oferece. Se você começar a injetar serviços nesses modelos, provavelmente estará injetando preocupações que não pertencem a ele. Ou isso ou seu modelo é mais anêmico do que você pensa. Por que mais você precisaria do serviço, além de fornecer algo que é necessário, mas está faltando? (Falta pode significar anêmica).
Evitar os dois "avanços" leva a um design mais forte. Você tem algo em um serviço que um modelo precisa? Talvez deva ser movido para o modelo. Caso contrário, talvez você deva reconsiderar suas preocupações. O comportamento de um modelo deve funcionar dentro do modelo. Deveria se preocupar principalmente (se não apenas) com os membros. Mas lembre-se, ainda haverá coisas que funcionam no modelo ou com ele . Por exemplo, os modelos não devem abrir conexões TCP ou ouvir eventos da interface do usuário, mesmo que estejam envolvidos de alguma forma. Isso é responsabilidade de outra pessoa e que alguém não pertence dentro do modelo.