регаешь все 10 команд в ДИ, регаешь в ДИ фабрику команд, которая будет принимать в конструкторе энумерабл команд, а в методе создания команды будет искать команду по имени и возвращать её, в итоге работа с командами будет через эту фабрику
Короче выше правильно пишут что так или иначе тебе сначала придется вытаскивать маппинг команд в типы, потом с его помощью вытаскивать конкретную команду по полученному типу.