Я привык к Ninject, и для конкретного проекта меня просят изучать Unity.
Я не могу найти информацию о том, как это сделать.
В Ninject я могу заявить:
Bind<IWarrior>().To<Samurai>().Named("Samurai");
Bind<IWarrior>().To<Ninja>().Named("Ninja");
Bind<IWeapon>().To<Katana>().WhenInjectedInto(typeof(Samurai));
Bind<IWeapon>().To<Shuriken>().WhenInjectedInto(typeof(Ninja));
И затем, когда кто-то просит воина по имени самурай, самурай приходит с кананой, а ниндзя - с сюрикенами. Как и должно быть.
Я не хочу ссылаться на контейнер воинов, чтобы получить соответствующее оружие, и не хочу загрязнять модель атрибутами (находится в другой сборке, в которой нет ссылки на точку или единицу)
PD: я ищу способ кода, а не через xml config.