有没有办法让 Unity 将属性注入的对象作为 Teardown 的一部分进行处理?
背景是我正在开发一个使用 ASP.NET MVC 2、Unity 和 WCF 的应用程序。我们编写了自己的 MVC 控制器工厂,它使用统一来实例化控制器,并使用控制器公共属性上的 [Dependency] 属性注入 WCF 代理。在页面生命周期结束时,会调用控制器工厂的 ReleaseController 方法,我们调用 IUnityContainer.Teardown(theMvcController)。此时控制器已按预期处理,但我还需要处理注入的 wcf 代理。(实际上我需要对它们调用 Close 和/或 Abort 而不是 Dispose 但这是后来的问题。)
我当然可以覆盖控制器的 Dispose 方法并清理那里的代理,但我不希望控制器必须知道注入接口的生命周期,甚至它们引用 WCF 代理。
如果我需要自己为此编写代码 - 最好的扩展点是什么?我会很感激任何指针。