我剛剛開始與溫莎,所以請溫柔:)我有一個場景,我希望能夠覆蓋/更換放置在windsor容器內的組件。繼續閱讀...如何覆蓋在溫莎城堡註冊的組件?
在我的prod代碼中,我希望能夠註冊實現基類的組件,並使用容器來解析實現者。到目前爲止,使用
container.Register(Component.For<LoggerBase>().ImplementedBy<DebugLogger>());
和
container.Resolve<LoggerBase>();
在我的測試,我想補充一個存根/模擬實現覆蓋「DebugLogger」的實施,這樣,當我的督促代碼調用container.Resolve<LoggerBase>();
它得到重寫的實現。
任何指針都會受到歡迎!
版本3現在實現'IsDefault'成員,允許您解決此問題。 http://stackoverflow.com/questions/9253388/in-castle-windsor-3-override-an-existing-component-registration/9254043#9254043 – 2012-02-13 02:31:04