2011-07-19 53 views
1

假設一個Person對象可以有多個地址,但必須有一個實現許多在對象模型中一個關係

你贊成使得一個需要地址的對象模型明確?如果是這樣,任何實施技巧?

乾杯,
Berryl

Person{ 
    Address TheRequiredAddress {get;}  

    IList<Address> OtherAddresses {....} 
} 

回答

2

我喜歡這個問題。與大多數設計決定一樣,這是上下文相關的。這將如何使用。

假設我在西雅圖有一個主要地址,鳳凰城有一個避暑別墅,還有一個用於商業目的的信箱。我的主地址是否比我的其他地址有特殊的優先權,還是地址的選擇是隨意的?在您嘗試我的避暑別墅或我的郵政信箱之前,您是否會嘗試在西雅圖找到我?

在對主地址進行不同處理的情況下,我會將其存儲在明確分離的位置。否則,將它們存儲在任意有序的集合中,並在類實現中至少強制執行一個。

+1

「..強制要求至少有一個..」 - 例如w /構造函數 –

+0

@Josh G.我喜歡這個答案,因爲你對它的依賴有一些好的想法!我也喜歡它,因爲我同意你的意見: - ) – Berryl

相關問題