2012-06-20 46 views
2

這是我的第一個問題,所以我會盡量不讓自己丟臉。如何用不同的注入重新實現MVC3控制器

我現在正在做的是注入兩個依賴對象到MVC3控制器的構造函數。

但是爲了應用程序邏輯的緣故,我需要在(運行時)將來的某個時候用新的對象更改這些對象。明顯的情況是讓MVC用注入的新對象創建一個新的控制器。一切順利,但我如何讓MVC生產新的控制器?

這裏是控制器(如果它是相關的,或者僅僅是爲了視覺識別):

public class RestoreController : Controller { 
    private readonly StatusProvider statusProvider; 
    private readonly AppHost appHost; 

    public RestoreController(StatusProvider statusProvider, AppHost appHost){ 
     this.statusProvider = statusProvider; 
     this.appHost = appHost; 
    } 

PS 我考慮一些其他的解決方案,但我想有些人告訴我可以肯定,這可以」不要做。

那麼可以嗎?

我很樂意聽到關於我的問題的評論。 Tnx,有一個不錯的。

回答

0

您每次嘗試訪問控制器時都會創建一個控制器實例(稱調用依賴於該視圖的視圖)。所以,如果你在運行時注入引用的對象,如果他們已經改變(實例值),你應該得到控制器上的變化

+0

謝謝,我想我可以使用 – zirus

相關問題