Получить последнюю версию с вкладки источника на Munq.Codeplex.com. Эта версия имеет улучшенный вид, и это версия, с которой я больше всего знаком, и я ее написал.
Чтобы избежать циклических ссылок для регистрации, создайте проект класса, который включает в себя ссылки на Munq.Interfaces и интерфейсы и реализации, которые вы хотите зарегистрировать.
Создайте класс, который реализует IMunqConfig. У него есть один метод void RegisterIn (контейнер IIocContainer) . Реализуйте этот метод.
public class MyRegistration : IMuncConfig
{
public void RegisterIn(IIocContainer container)
{
container.Register<IMyInterface>(c => new MyImplementation());
// OR
container.Register<IMyInterface, MyImplementation>();
// Repeat as required for each thing to register
}
}
Тогда в global.asax
protected void Application_Start()
{
IocContainer = new Container();
Munq.COnfigurationLoader.FindAndRegisterDependencies(container);
AreaRegistration.RegisterAllAreas();
RegisterRoutes(RouteTable.Routes);
}
Это будет искать в каталоге bin любые библиотеки, в которых есть классы, реализующие IMunqConfig, и выполнять метод RegisterIn для каждого. Так что просто поместите регистрационные dll в каталог bin, и регистрация произойдет автоматически:)
Мэтью