在設計一個新的多層應用程序,我面臨的困難在決定爲我的DAL和BLL層設計單/多數據存儲庫。設計DAL和BLL - 對相關表
假設我將員工信息分散在多個表中,這些表具有與主表的1-1和1-多關係。很少有如下所列:
員工(主表),
Employee_Contact_Detail,
Employee_Education,
Employee_Skill,
Employee_Experience
在DAL水平,我有一個通用的數據存儲庫提供諸如GETALL常用功能, GetSingle,添加,編輯,刪除每個表。
現在,我要設計我的「員工資料庫」從我的「通用數據倉庫」派生並添加功能像GetEmployeePersonalDetail,GetEmployeeContactDetail,GetEmployeeEducation,AddEmployeePersonalDetail,EditEmployeePersonalDetail等單一類上面列出在這所有相關表對於「通用數據存儲庫」,我將獲得的好處更少。另一種方法是我爲每個表創建(並從Generic Repository派生)一個單獨的數據存儲庫,然後在「Employee」的業務邏輯層創建一個類。
編輯
如果我去了選項「爲每個表單獨的數據存儲庫」,在DAL水平,然後,而不是「單一的商業邏輯類」的「僱員」,如果我創建獨立的業務邏輯與每個數據存儲庫相對應的類是否會採取不雅的方法來觀察場景?
非常感謝您的指導。
你打算做什麼沒有錯。這個問題沒有任何具體的答案。所有答案都將基於意見。所以,你最好關注你的需求而不是模式。模式可以解決我們的問題。如果有什麼解決你的問題,那麼這是你的模式。 –
@A_J,非常感謝您的意見。我已經提出了一些問題。 – developer