Я пытаюсь использовать карту структуры в первый раз. Я раньше использовал ioc-контейнеры, но всегда с xml config. Поскольку карта структуры использует конфигурацию через код (я знаю, что это можно сделать и в xml, но большинство примеров использует конфигурацию через код), я сталкиваюсь с некоторыми проблемами со ссылками.
Давайте поработаем со следующим примером (не реальным):
3 сборки.
DataLayer
BusinessLayer
Услуги
BusinessLayer ссылается на DataLayer (чтобы он мог получать данные)
И DataLayer, и BusinessLayer ссылаются на сборку Services, поскольку она содержит код для ведения журнала.
Я хочу, чтобы компонент Log управлялся StructureMap, чтобы я мог изменить компонент журнала.
На бизнес-уровне также есть некоторые компоненты, обслуживаемые StructureMap.
Так что моя проблема сейчас.
Куда мне положить конфиг карты структуры?
Если я помещу его в BusinessLayer, DataLayer не сможет использовать компонент Log (поскольку ссылка на бизнес-уровень будет преобразована в циклическую ссылку). Я не могу поместить его в проект Services, потому что в BusinessLayer также есть некоторые компоненты (и на бизнес-уровне есть ссылка на сборку службы).
Надеюсь, я достаточно хорошо объяснил. Основная проблема здесь заключается в том, что StructureMap нуждается в ссылке на сборку, прежде чем она может быть настроена, что, на мой взгляд, проблематично. Я все делаю неправильно?