在試驗this question on collections in Spring.NET時,我發現Spring可以使用私有setter來注入依賴項。我有兩個問題:Spring.NET如何使用私人setter?
- 這是否記錄在任何地方?
- 正在使用私人二傳手推薦?
二傳手基於DI通過調用你的對象setter方法實現...
當然,它並沒有明確說公共 setter方法,但這就是我一直以來的想法。我在.NET 3.5上使用版本1.0.2。
在試驗this question on collections in Spring.NET時,我發現Spring可以使用私有setter來注入依賴項。我有兩個問題:Spring.NET如何使用私人setter?
二傳手基於DI通過調用你的對象setter方法實現...
當然,它並沒有明確說公共 setter方法,但這就是我一直以來的想法。我在.NET 3.5上使用版本1.0.2。
唐,
不,這不是記錄asfaik - 主要是因爲我們不建議這樣做。該功能在處理傳統/第三方庫時支持罕見的角落櫃檯。
你應該只使用你可能在你的單元測試中調用的公共setter!
心連心, 埃裏希
春天的Java版本使用反射,可以在那些私人setter方法獲得。這很好,因爲你不會爲了滿足Spring而強迫某個人改變一個不可變的對象。
就我個人而言,我更喜歡使用構造函數注入。
謝謝!也許這是值得記錄和明確的勸阻。請注意,添加專用setter實際上會將收集註入的語義從添加到替換中更改。 – 2009-01-20 21:49:56