Я новичок в IOC и StructureMap, у меня есть приложение n-уровня, и я смотрю, как настроить соединения (ForRequestedType ...), и просто хочу узнать у людей с большим опытом, что это лучший способ сделать это. !
Я не хочу, чтобы мой объект приложения UI ссылался непосредственно на мой уровень персистентности, поэтому я не могу подключить все в этом проекте UI.
Теперь у меня все работает, определяя класс Registry в каждом проекте, который связывает типы в проекте по мере необходимости. Уровень выше регистрирует свои типы, а также вызывает сборку ниже и ищет регистры, чтобы все типы регистрировались через иерархию.
например. У меня есть библиотеки пользовательского интерфейса, службы, домена и постоянства. В моем сервисном слое реестр выглядит как
Scan(x =>
{
x.Assembly("MyPersistenceProject");
x.LookForRegistries();
});
ForRequestedType<IService>().TheDefault.Is.OfConcreteType<MyService>();
Это рекомендуемый способ сделать это в такой конфигурации, как эта? Есть ли лучшие способы и каковы преимущества / недостатки этих подходов в этом случае?