MediatR 試用紀錄

一個很受歡迎的套件。常用於實作CQRS pattern。試用看看。

引言

最近經常看到 CQRS patternarrow-up-right,然後使用MediatRarrow-up-right實作。 本人對CQRS沒興趣,有興趣的只有MediatR的訊息傳遞模組。

MediatR應用類型現在有三種

  • IRequest (including generic variants and Unit) 就是 Request/Reponse模式。

  • INotification 通知模式,也是本人最有興趣的。

  • IStreamRequest 未試用。

開發前置準備

開發環境

  • IDE: Visual Studio 2022

  • platform: .NET6

  • project type: Blaozr WASM hosted app

安裝套件

註冊

關鍵指令紀錄

IRequest 模式

定義 Request/Response 與其 Handler:

應用:

INotification模式

定義 Notification:

定義接收 Notification 的 handler:

應用:

試用心得

CQRS pattern with MediatR 的應用應該比較適合實作微服務。比如:非同步的、資料後送類的、通知類的、可射後不理的,比如像是 Action Log 或資料歸檔 Data Archive 或 Authz 這類domain範圍不大的、數據相依性不多甚至沒有的等等簡單就能封裝的(closure)資料包的應用。

  • 其他說明:可以實作Notification、CQRS Pattern。很受觀迎的CQRS實作技術。

  • 試用心得優點:適合用於後端,如與WebApi搭配使用。

  • 試用心得缺點:可惜其Notification Publisn 在 WebAssembly 前端無效。

Last updated