2010-07-27 47 views
3

有DAL庫可以顯示數十個存儲庫。每個實體一個存儲庫。有PersonRepository & PhotoRepositoryDAL:存儲庫邊界問題

當我向存儲庫添加新方法並且方法處理實體時,很明顯我必須放置該方法。如果我需要CreatePerson,我將創建PersonRepository::Create(...)或者當我需要更新照片時,我將創建PhotoRepository::Update

但是,當方法處理實體關係時,有時會出現蒸氣。例如,我應該創建PersonRepository::AssignPhoto(PersonId, PhotoId)還是應該創建PhotoRepository::AssingToPerson(PhotoId, PersonId)?如果事情對我來說很清楚(我認爲Person是比Photo更重要的實體,所以我將創建PersonRepository方法),但有些開發人員找不到合適的方法,並傾向於在PhotoRepository中創建重複項。

你如何最小化這個問題?

可能是你同時創建了兩種方法(PersonRepository::AssignPhoto & PhotoRepository::AssignToPerson)(一個方法委託調用另一個實現它的地方)?或者我們是否應該在團隊中使用強大的存儲庫方法命名約定?或者,我可能會改變存儲庫邊界的方法嗎?

回答

0

在一個面向對象的世界裏,我有一個Person對象,方法是AssignPhoto

處理對庫的對象關係操作感覺像程序方法,至少對我來說。

+0

但你如何決定? – 2010-07-27 12:51:27