控制器里面两个新增 一个走MediatRy个走传统的Service
/// <summary> /// 创建用户_mediator /// </summary> /// <param name="cmd"></param> /// <returns></returns> [HttpPost] public async Task<int> CusCreateMediator([FromBody] CusCreateCommand cmd)=> await _mediator.Send(cmd,HttpContext.RequestAborted); /// <summary> /// 创建用户 Service /// </summary> /// <returns></returns> [HttpPost] public async Task<int> CusCreateService() => await _cusService.AddAsync();运行可以发现 传统的Service就不会执行 。MediatR 中具有与此类似的管线机制,可通过泛型接口 IPipelineBehavior<,>注册,使得我们在 Handle 真正执行前或后可以额外做一些事情:记录日志、对消息做校验、对数据做预处理数据库事务、记录性能较差的Handler 等等 。

文章插图
8、总结MediatR的用法
a.IRequest、IRequest<T> 只有一个单独的Handler执行
b.Notification,用于多个Handler 。
对于每个 request 类型,都有相应的 handler 接口:
- IRequestHandler<T, U> 实现该接口并返回 Task<U>
- RequestHandler<T, U> 继承该类并返回 U
- IRequestHandler<T> 实现该接口并返回 Task<Unit>
- AsyncRequestHandler<T> 继承该类并返回 Task
- RequestHandler<T> 继承该类不返回
Notification 消息的定义很简单,只需要让你的类继承一个空接口 INotification 即可 。而处理程序则实现 INotificationHandler<T> 接口的 Handle 方法
PASS:如果你想成为一个成功的人,那么请为自己加油,让积极打败消极,让高尚打败鄙陋,让真诚打败虚伪,让宽容打败褊狭,让快乐打败忧郁,让勤奋打败懒惰,让坚强打败脆弱,只要你愿意,你完全可以做最好的自己 。
经验总结扩展阅读
- 常用Python库整理
- 2023年1月24日建造寺庙好吗 2023年1月24日建造寺庙行吗
- 中式装修风格怎么搭配更好看 中式风格装修注意事项有哪些
- 2023年1月24日修筑堤坝好吗 2023年1月24日是修筑堤坝的黄道吉日吗
- 2023年1月24日粉刷墙壁好吗 2023年1月24日是粉刷墙壁的黄道吉日吗
- 2023年1月24日厨房移位好吗 2023年1月24日厨房移位行吗
- 加拿大高中排名 加拿大高中排名
- 2023中秋祝福语送客户
- 2023中秋祝福语送领导
- 2023送给领导的中秋祝福语