Chciałbym rozwiązać zależności przy użyciu nazwanego parametru w kontroler MVC. Jeśli mogę otworzyć pojemnik Autofac powinienem być w stanie to zrobić tak:Jak uzyskać dostęp do kontenera autofac w kontrolerze ASP.NET MVC3?
var service = Container.Resolve<IService>(
new NamedParameter("fileExtension", dupExt)
);
nie mogę dowiedzieć się, jak uzyskać dostęp do pojemnika AutoFac. Czy istnieje globalne odniesienie do kontenera, którego mogę użyć lub czy istnieje inny sposób używania nazwanych parametrów?
Nie powinieneś tego robić. To zła praktyka. Zamiast podejścia do lokalizatora usług lepiej jest wykonać iniektor konstruktora. Po prostu wstrzyknij IService do konstruktora i użyj wstrzykniętego instace jako pola klasy – Wojteq
Jak mogę używać nazwanych parametrów przy takim podejściu? –
Możesz uzyskać coś podobnego za pośrednictwem delegata Factory: http://code.google.com/p/autofac/wiki/DelegateFactories – Wojteq