autofac — правильное использование в многомодульном приложении

Я работаю над приложением, состоящим из множества модулей, некоторые из которых зависят от других модулей. Теперь я решил использовать Autofac для решения циклических зависимостей и улучшения архитектуры в целом.

Для настройки autofac я использую метод xml (http://code.google.com/p/autofac/wiki/XmlConfiguration).

Теперь я не знаю, как реализовать Autofac. Нужно ли мне иметь ссылку на autofac в каждом модуле моего приложения? Это означает, что я должен регистрировать все компоненты каждый раз, когда я хочу решить зависимость...

ContainerBuilder builder = new ContainerBuilder();
builder.RegisterModule(new ConfigurationSettingsReader("autofac", configPath));
IContainer container = builder.Build();
IWhatever w = container.Resolve();

Это способ сделать это?

Или лучше вынести Autofac в отдельный модуль? При таком подходе мне пришлось бы регистрировать модули только один раз (при запуске приложения) и я мог бы просто использовать обернутый Autofac для разрешения зависимостей...

IWhatever w = container.Resolve();

Надеюсь, кто-нибудь подскажет, как лучше всего использовать Autofac.

спасибо!

7
задан Fabian 26 March 2012 в 14:34
поделиться