2
我想實現一個使用ninject和NHibernate的觀察者模式。Ninject/NHibernate事件+觀察者模式
我希望能夠通過NHibernate持久化或刪除對象時,能夠注入充當「觸發器」的觀察者。
關鍵點 -
- 我想觀察者通知的對象持久化任何時候,包括級聯保存,這就是爲什麼我使用NHibernate PostInsert/PostUpdate事件。
- 我希望能夠通過Ninject注入觀察者(不想在nhibernate事件處理程序中的任何地方)。
- 根據持久化對象的類型,觀察者是不同的,所以我需要一個很好的方法來知道應該在NHibernate事件中調用哪些觀察者。
我的代碼現在對使用構造函數注入通過NHibernate加載的對象非常有效。一個觀察者類被注入域模型,它通過nhibernate事件進行,並且可以被解僱沒有問題。
問題:我們現有的代碼庫使用我們的域對象與工廠的默認構造函數。因此,除非我們改用工廠,否則觀察員將不會注入。
我知道將所有內容切換到工廠都可以,但我想看看是否有人有更好的建議來完成此任務。那麼,我應該讓工廠來實例化新對象還是其他東西?
所以你不能把構造函數與在構造函數的參數列出的依賴關係的域對象的? – AaronHS 2012-02-16 11:16:28