我目前正在使用J奧利弗的EventStore,據我瞭解,它使用Guids作爲Stream ID,這就是用來構建我的聚合根的。CQRS/EventStore - 將GUIDS傳遞給UI?
從CQRS的角度和DDD的角度來看,我應該考慮域而不是GUID。所以,如果我做了一個GET(Mvc客戶端),我是否有權說我的URL應該有我的域對象(聚合根)的身份,並從那裏獲得讀取存儲的GUID用於從事件存儲中構建我的聚合根?
或者我應該將GUID傳遞給我的表單並將它們作爲隱藏的表單變量傳回?至少這樣我知道聚合根ID,不必查詢讀取存儲?
我想第一種方法是正確的方式(不使用表單中的GUID),因爲那樣我的所有Gets和POSTS都處理域對象的身份,而不是客戶端不知道的GUID。
我想這也允許我構建爲基於REST的API,它側重於資源及其身份,而不是系統生成的GUIDS。如果我錯了,請糾正我。
JD
謝謝馬蒂亞斯,真的很感謝你的回覆。 – 2012-02-03 13:59:16
沒問題,很高興我能幫上忙。 – 2012-02-03 14:03:05