2009-09-18 80 views
7

有沒有辦法讓Unity處理屬性注入對象作爲拆解的一部分?統一處理對象

背景是我正在使用ASP.NET MVC 2,Unity和WCF的應用程序。我們編寫了我們自己的MVC控制器工廠,它使用unity來實例化控制器,WCF代理在控制器的公共屬性上使用[Dependency]屬性注入。在頁面生命週期結束時,控制器工廠的ReleaseController方法被調用,我們調用IUnityContainer.Teardown(theMvcController)。此時控制器按預期方式處置,但我還需要處理注入的wcf-proxies。 (其實我需要在它們上調用Close和/或Abort,而不是處置,但這是後面的問題。)

我當然可以重寫控制器的Dispose方法並清理代理,但是我沒有希望控制器必須知道注入接口的生命週期,或者甚至他們引用WCF代理。

如果我需要自己編寫代碼 - 最佳擴展點是什麼?我會很欣賞任何指針。

回答

0

可能的解決方法是,你還可以寫在你的代理,將在處置(處置情況下,當通過統一調用)的包裝調用代理的關閉方法。這對你來說是一個可行的場景嗎?