Czy istnieje sposób, aby Unity zrzekła obiektów wstrzykniętych w posiadanie w ramach Teardown?Jedność, aby pozbyć się obiektu
Podsumowując, pracuję nad aplikacją wykorzystującą ASP.NET MVC 2, Unity i WCF. Napisaliśmy własną fabrykę kontrolerów MVC, która używa jedności do utworzenia instancji kontrolera, a proxy WCF są wstrzykiwane za pomocą atrybutu [Dependency] w publicznych właściwościach kontrolera. Pod koniec cyklu życia strony jest wywoływana metoda ReleaseController fabryki kontrolerów i nazywamy IUnityContainer.Teardown (theMvcController). W tym momencie kontroler jest usuwany zgodnie z oczekiwaniami, ale muszę również pozbyć się wstrzykiwanych proxy wcf. (Właściwie to muszę wywołać Close i/lub Abort na nich, a nie Dispose, ale to jest późniejszy problem.)
Mogę oczywiście zastąpić metody Displays kontrolerów i wyczyścić tam proxy, ale ja nie chcą, aby kontrolerzy musieli wiedzieć o cyklach życia wtryśniętych interfejsów lub nawet o tym, że odnoszą się one do serwerów proxy WCF.
Jeśli muszę napisać kod samodzielnie - jaki byłby najlepszy punkt rozszerzenia? Byłbym wdzięczny za dowolny wskaźnik.