在我正在處理的應用程序中,我們有一些操作會在將新實體添加到存儲庫時觸發。其中一項新操作應該使用服務(如服務層,而不是以太網某處的Web服務)來執行某些商業規則操作。根據業務規則選擇服務實現
這是一切都很好,但是應該使用確切的服務會根據我們操縱的實體的屬性(基本上,根據實體與哪個客戶有關)而變化。我希望保持鬆散的行動,以適應可能需要調用的服務。
我想要做的是實現一個工廠,它將接受實體並返回正確的服務。不過,這看起來有點不方便。有沒有更好的方法來設置它?
我曾經考慮過在運行時使用IoC容器來確定正確的實現,但仔細閱讀一對(Ninject和Windsor)似乎並不表示它們非常適合這種操作。
'工廠'方法幾乎是這樣的事情的正確設計。你爲什麼這是「有點傻」? – Oded
我不確定。我想我只是不喜歡在某處放出服務的巨大轉換語句的想法。似乎應該有一個更優雅的方式。所以,我想我會檢查是否有其他人知道。 :) – Michael
那麼,如果這是所有的類/方法正在做,顯然這是它的工作......比試圖對它「聰明」更好。 – Oded