Próbuję uzyskać wtrysk właściwości działający na atrybut filtru działania niestandardowego. Działa tak, jak powinno, jednak chciałbym użyć DI na samej własności. Mój filtr wygląda tak, jak ten Oto jak konfiguruję właściwość za pomocą StructureMap w mojej klasie BootStrapper.Włamanie właściwości do filtru działania
//HeaderFilterAttribute
IMarketRepository marketRepository = new SqlMarketRepository();
IMarketService marketService = new MarketService(marketRepository);
ObjectFactory.Container.Configure(r => r.ForConcreteType<HeaderFilterAttribute>().
Configure.WithProperty("MarketService").
EqualTo(marketService));
Moim problemem jest to, że nie mają dostępu do SqlMarketRepository ponieważ wszystkie moje konkretne typy są wstrzykiwane przez DI, a ja naprawdę nie chcesz używać konkretnych typów w moim inicjującego. Tak więc ostatecznym pytaniem jest, w jaki sposób mogę wstrzyknąć usługę MarketService do atrybutu filtra bez uciekania się do powyższych? :)
Czy MVC 3 jest opcją? To jest wbudowane. –
Muszę podjąć decyzję w ciągu miesiąca Craig i nie jestem pewien, czy zespół zatwierdzi wydanie wersji zapoznawczej do użytku produkcyjnego :( – Praveen