Я изучаю AutoFac.Мне нравится идея модулей.Из моего понимания я мог, например, создать модуль, который регистрирует некоторую часть зависимостей моего приложения в контейнере, чтобы создать некоторую абстракцию над ним.Однако я не знаю, что делать в ситуациях, когда у меня есть несколько модулей.
Прежде всего, я должен создать отдельный модуль LoggerModule только для этого:
builder.RegisterType <'MyLogger> (). As <' ILogger> ();
Или его следует поместить прямо в корень композиции?Вопрос возникает из-за моей путаницы, стоит ли регистрировать модули (более высокая абстракция) и сервисы (более низкая абстракция) на одном и том же уровне корня композиции.Должны ли модули создаваться только для сервисов, которые используют много зависимостей, чтобы упростить регистрацию на корневом уровне композиции?
Еще одна вещь: как насчет других моих модулей, которые регистрируют сервисы, для которых требуется ILogger?Должен ли я просто предположить, что ILogger уже зарегистрирован и просто c.Resolve <'ILogger> (), или я должен зарегистрировать его снова, чтобы у каждого модуля были зарегистрированы все необходимые зависимости?
Могу ли ясоздать модуль, который регистрирует другие модули?
Я пытался найти ответы на них, но нашел только темы, которые были близки, но не совсем касались моей проблемы.