在通過網絡閱讀大量關於最佳實踐應用程序設計和模式的文章後,我仍然無法將所有信息合併在一起,並映射到我的真實應用程序...3層web服務架構
我想有一個3層的應用程序:
- UI層:
的ASP.net中承載的Silverlight的應用程序 - 的webapp - 商海ssLogicLayer:
的WCF服務/ .NET RIA-服務不同的服務器 - DataAccessLayer上運行:使用ORM像NHibernate的奧德Linq2Entities
的問題是,我不知道知道在哪裏放置我的業務對象,以及在哪裏填充數據。
是否應該有另一個圖層,包含我所有的業務對象,以便它們可以用於所有其他3個圖層?
或者我應該把它們放到我的BLL中,然後在DAL中調用nHibernate-Methods - 但是我會在BLL和DAL之間產生循環依賴關係? 如果我在DAL中引入「DataAccessObjects」並將所有屬性複製到BLL中的BusinessObjects中,是不是「過度構建」?
任何幫助表示讚賞!
最好的問候, 丹尼爾·蘭
Infact,我不直接使用WCF,而是建立在「普通」WCF服務之上的WCF RIA服務。 我的意圖是,儘可能保持業務對象的清潔,從而創建額外的「經理」類,它們用業務對象完成所有工作。 – 2009-12-02 16:28:43