gpt4 book ai didi

unity-container - 统一处置对象

转载 作者:行者123 更新时间:2023-12-04 12:56:31 24 4
gpt4 key购买 nike

有没有办法让 Unity 将属性注入(inject)的对象作为 Teardown 的一部分进行处理?

背景是我正在开发一个使用 ASP.NET MVC 2、Unity 和 WCF 的应用程序。我们编写了自己的 MVC Controller 工厂,它使用统一来实例化 Controller ,并使用 Controller 公共(public)属性上的 [Dependency] 属性注入(inject) WCF 代理。在页面生命周期结束时,会调用 Controller 工厂的 ReleaseController 方法,我们调用 IUnityContainer.Teardown(theMvcController)。此时 Controller 已按预期处理,但我还需要处理注入(inject)的 wcf 代理。 (实际上我需要对它们调用 Close 和/或 Abort 而不是 Dispose 但这是后来的问题。)

我当然可以覆盖 Controller 的 Dispose 方法并清理那里的代理,但我不希望 Controller 必须知道注入(inject)接口(interface)的生命周期,甚至它们引用 WCF 代理。

如果我需要自己为此编写代码 - 最好的扩展点是什么?我会很感激任何指针。

最佳答案

我创建了一个统一扩展,它将负责处理由容器在 TearDown 上创建的实例。

http://www.neovolve.com/2010/06/18/unity-extension-for-disposing-build-trees-on-teardown/

关于unity-container - 统一处置对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1443515/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com