DDD 領域驅動設計 領域模型中的使用者設計

2022-01-13 02:38:34 字數 2523 閱讀 2695

驗證:根據 userid 判斷此使用者是否擁有部落格。

許可權:根據當前 loginname,判斷此使用者是否擁有審核許可權。

public int userid 

public string userloginname

public string userdisplayname

public string useremail

public string useralias

public string displayname

public string email

public string alias

[jsonproperty("spaceuserid")]

public int id

}}jsonproperty 的作用是在 userservice 獲取使用者資訊的時候,對映源屬性名稱,getuserbyloginname 示例**:

this.replycontent = "恭喜您!您的js許可權申請已通過審批。";

eventbus = ioccontainer.default.resolve();

await eventbus.publish(new jspermissionopenedevent() );

return true;

}public bool deny(string replycontent)

this.status = status.deny;

this.replycontent = replycontent;

return true;

}public bool lock()

this.status = status.lock;

return true;

}public async task passed()

eventbus = ioccontainer.default.resolve();

await eventbus.publish(new messagesentevent() );

}public async task denied()

eventbus = ioccontainer.default.resolve();

await eventbus.publish(new messagesentevent() );

}public async task locked()

eventbus = ioccontainer.default.resolve();

await eventbus.publish(new messagesentevent() );}}

}

select top 1000 [id]

,[reason]

,[status]

,[ip]

,[replycontent]

,[isactive]

,[user_loginname]

,[user_displayname]

,[user_email]

,[user_alias]

,[user_id]

public string reason

public string ip

public int userid

public string userloginname

public string userdisplayname

public string useremail

public string useralias

}}另外領域服務、應用服務和單元測試**,也對應進行了更新,詳細檢視上面的開源位址。

userid 換為 user 設計,大致有兩個好處:

技術是設計的實現,不能用技術來影響設計。

DDD領域驅動設計 充血模型 貧血領域模型

最早廣泛應用源於ejb2,最強盛時期則是由spring創造,把 分離到不同的物件中 貧血領域模型是乙個存在已久的反模式,它不是個好東西。它完全和物件導向設計背道而馳。物件導向設計主張將資料和行為繫結在一起,而貧血領域模型則更像是一種面向過程設計。貧血領域模型的根本問題在於,它引入了領域模型設計的所有...

DDD領域驅動設計

公司裡面敏捷專案要講ddd領域驅動設計,加緊學習了一下,找了一些資料研究。eric evans的 domain driven design領域驅動設計 簡稱ddd,evans ddd是一套綜合軟體系統分析和設計的物件導向建模方法,本站jdon.com是國內公開最早討論ddd 之一,可訂閱 ddd專題...

DDD(領域驅動設計)

domain 領域 driven 驅動 design 設計 由eric evans最先提出,目的是對軟體所涉及到的領域進行建模,以應對系統規模過大時引起的軟體複雜性的問題。整個過程大概是這樣 開發團隊和領域專家一起通過 通用語言 ubiquitous language 去理解和消化領域知識,從領域知...