Существует ли способ заставить Единицу расположить введенные свойством объекты как часть Разрушения?
Фон - то, что я работаю над приложением, которое использует ASP.NET MVC 2, Единицу и WCF. Мы записали нашу собственную фабрику контроллера MVC, которая использует единицу для инстанцирования контроллера, и прокси WCF введены с помощью [Зависимость] атрибут на общественных собственностях контроллера. В конце жизненного цикла страницы называют метод ReleaseController фабрики контроллера, и мы называем IUnityContainer. Разрушение (theMvcController). В той точке контроллер расположен как ожидалось, но я также должен расположить введенные wcf-прокси. (На самом деле я должен звонить Близко и/или Аварийное прекращение работы на них и не Расположить, но это - более поздняя проблема.)
Я мог, конечно, переопределить контроллеры, Располагают методы и очищают прокси там, но я не хочу, чтобы контроллеры должны были знать о жизненных циклах введенных интерфейсов или даже что они обращаются к прокси WCF.
Если бы я должен написать код сам для этого - какова была бы лучшая точка расширения? Я ценил бы любой указатель.
Я создал расширение unity, которое позаботится об утилизации экземпляров, созданных контейнером при TearDown.
Смотрите http://www.neovolve.com/2010/06/18/unity-extension-for-disposing-build-trees-on-teardown/