MediatR——INotification(2)

一、简介

通知消息,分派给多个处理程序

二、配置信息

notiConmmand

public class notiConmmand:INotification
    {
        public string name { get; set; }
        public string addr { get; set; }
    }

GoogleCommandHandle.cs

添加谷歌处理类

 public class GoogleCommandHandle : INotificationHandler<notiConmmand>
    {
        public Task Handle(notiConmmand notiConmmand, CancellationToken cancellationToken)
        {
            Console.WriteLine($"Google{notiConmmand.name},{notiConmmand.addr}");
            return Task.CompletedTask;
        }
    }

再添加,qq,微信的处理类,仅改输出的内容,例将 $"Google 换为 $"QQ

OrderController.cs

 [HttpGet]
        public async Task<ActionResult<string>> Notification([FromBody]notiConmmand notiConmmand)
        {
            notiConmmand notiConmmand1 = new notiConmmand
            {
                name = notiConmmand.name,
                addr = notiConmmand.addr
            };
             await _mediator.Publish(notiConmmand1);
            return Ok(notiConmmand1);
        }

三、执行结果

INotification通过Publish广播给所有处理类,然后三个处理类都会执行
在这里插入图片描述

posted @   有诗亦有远方  阅读(35)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示