2016-06-10 28 views
1

我有一個Customer Readmodel包含一些屬性,包括active屬性。百老匯同一ReadModel上的多臺投影儀CQRS

現在假設我想用客戶信息填充2個表格:例如,一個表格只有customer idactive狀態,另一個表格包含所有信息。

爲了達到這個目的,我應該分別製作一個單獨的ProjectorReadmodelRepository嗎?

編輯: 示例方案:

CustomerCreatedEvent - >包含所有客戶數據

CustomerActivatedEvent - >僅包含客戶ID啓用狀態=真

Readmodel = Customer類

一投影儀處理兩個事件。

CustomerActivatedEvent處理程序將根據CustomerActivatedEvent中的數據加載客戶並通過CustomerRepository(或ActiveCustomersRepository?)更新'active_users'表。

回答

0

你讀端的事件處理程序負責更新你叫什麼Readmodels你所希望的方式的人。

例如,你可以有一個CustomerCreatedEventHandler來更新你需要的2個表,或者你可以有兩個單獨的事件處理程序,這兩個事件處理程序都是同一個事件的訂閱者,每個更新不同的表。

+0

我編輯我的帖子應該如何流動,你能確認它是正確的嗎? – Oli