1.引言

最近剛學(xué)習(xí)了下DDD中領(lǐng)域事件的理論知識,總的來說領(lǐng)域事件主要有兩個作用,一是解耦,二是使用領(lǐng)域事件進(jìn)行事務(wù)的拆分,通過引入事件存儲,來實(shí)現(xiàn)數(shù)據(jù)的最終一致性。若想了解DDD中領(lǐng)域事件的概念,可參考DDD理論學(xué)習(xí)系列(9)-- 領(lǐng)域事件。

Abp中使用事件總線來實(shí)現(xiàn)領(lǐng)域事件,而關(guān)于事件總線的實(shí)現(xiàn),大家可參考我這篇博文——事件總線知多少,本文將不再贅述。

2.用例分析

當(dāng)用戶被成功分配任務(wù)后,發(fā)送郵件和消息通知給用戶。

這個用例比較簡單,沒有太多的復(fù)雜邏輯,按照我們傳統(tǒng)的思路,直接在任務(wù)編輯方法中添加郵件和消息發(fā)送的方法即可,代碼如下:

public void UpdateTask(UpdateTaskInput input){    //We can use Logger, it's defined in ApplicationService base class.
    Logger.Info("Updating a task for input: " + input);    //獲取是否有權(quán)限
    boo
        
		

網(wǎng)友評論