0
在this article Ayende描述如何映射單個域模型到多個物理數據模型之間的單個域模型。是否有可能擴展這個原則,使映射可以動態選擇?NHibernate的:動態交換多個物理數據模型
因此,舉例來說,假設我們有可能通過三種方式取決於其當前狀態被寫入到同一物理架構中的實體,讓我們假設,無論狀態,爲每個實體有一個唯一的標識符。
一個解決辦法是表示實體在其不同的狀態與三個獨立的類:一個爲每個映射。然後,該實體可以加載並以改變其狀態的實體可以被映射到表示它的其他狀態中的一個類,然後保存回模式,利用不同的映射的。
我想知道是否完全有可能擁有一個持有狀態標誌(類似鑑別符)的類所代表的實體,並且任何向模式的保存都會根據該值選擇適當的映射的狀態標誌。
希望這是有道理的!
非常感謝。
感謝您的答覆。在我看來,如果有可能,那麼它會更乾淨。只是爲了澄清:我沒有改變實體的類型(這是我需要做的,如果它是不可能的),我改變它是如何堅持。這是對象模型不應該關心的事情,需要有多個類來表示同一個實體會污染對象模型。 – Nigel 2010-04-29 15:49:15
我支持我的回答。你用不同的類表示同一事物的不同狀態。 IMO *表示根據內部狀態有效地改變實體類型。我不建議,特別是因爲你有一個簡單的解決方案,其只是表示與正常性能,甚至與一些''關係狀態。 –
2010-05-11 12:08:22
Downvoters:關心表達你的意見/備選方案/解決方案? – 2010-05-11 12:08:48