Mam 4 projekty:Dependency Injection i struktura projektu dla aplikacji konsolowych
rdzeniowy (IServer):
- systemowe
- System.Core
DependencyResolver:
- Rdzeń
- StructureMap
Infrastructure (serwis):
- Rdzeń
- zależność zewnętrzna
konsoli:
- Rdzeń
- DependencyResolver
Requierements:
Próbuję użyć StructureMap tylko w DependencyResolver. Ponadto aplikacja Console nie powinna wiedzieć nic o infrastrukturze.
Kiedy nie chcę odwoływać się do StructureMap w mojej aplikacji Console, muszę zbudować ServiceLocator.
W DependencyResolver Mam inicjującego, który jest odpowiedzialny za wywołanie StructureMap rzeczy rejestru (rejestru)
W mojej aplikacji konsoli chcę uzyskać instancję. W tym celu muszę odwołać się do StructureMap. Innym sposobem byłoby napisanie małego wrappera o metodach StructureMaps.
Czy istnieje inny lepszy sposób oddzielenia konsoli od StructureMap?
Brzmi trochę ponad zaprojektowane. Jak wygląda twój kod? Dlaczego potrzebny jest lokalizator usług, jeśli narzędzie do rozwiązywania zależności już hermetyzuje mapę struktury? – SimonC
Czy widziałeś http://bootstrapper.codeplex.com/ –
Rozdzielacz zależności nazw nie jest najlepszym wyborem w odniesieniu do tego, za co składnik jest odpowiedzialny. Obecnie jedynym obowiązkiem jest rejestrowanie zależności. Tak więc moje pytanie dotyczy bardziej rozdzielczej części Dependency Injection. – Rookian