2011-07-24 29 views

回答

5

ServiceLocator被設計爲一個抽象層,它允許您實現自己的ServiceLocator適配器,該適配器確定如何在應用程序中解析服務。其中一個例子是Windsor Service Locator Adapter

服務定位器根據Brad Wilson具有解決與服務定位器註冊控制器的能力:

這是MVC 3. MVC框架(具體地, DefaultControllerFactory類)的新功能已被更新爲嘗試創建具有註冊服務定位器的所有控制器實例的 。

服務定位器也可以在整個框架中用來解決ASP.NET MVC框架使用像ActionFilters,ResultHandlers甚至ViewEngines所需的依賴關係的許多其他依賴關係。

如果你使你的控制器的所有實例都可用,對於一個標準的應用程序,這很可能不需要一個自定義控制器工廠。但是,如果您需要在控制器實例化之前,之中或之後執行特定的操作,可以在返回供框架其餘部分使用之前使用controllerfactory來處理這些特定的實現。

相關問題