当前位置: 首页 > news >正文

微信公众号第三方管理平台安卓优化大师2023

微信公众号第三方管理平台,安卓优化大师2023,星沙网站制作,正确的网址格式输入文章目录 前言模拟消息订阅发布使用注意事项 前言 我想做个简单的消息发布订阅功能,但是发现好像没有现成的工具类。要么就是Mqtt这种消息订阅发布。但是我只想程序内部进行消息订阅发布,进行程序的解耦。那没办法了,只能自己上了 模拟消息…

文章目录

  • 前言
  • 模拟消息订阅发布
    • 使用
    • 注意事项

前言

我想做个简单的消息发布订阅功能,但是发现好像没有现成的工具类。要么就是Mqtt这种消息订阅发布。但是我只想程序内部进行消息订阅发布,进行程序的解耦。那没办法了,只能自己上了

模拟消息订阅发布

在Utils 的MessageHelper
在这里插入图片描述

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace NetCore.Utils
{public class MessageHelper{public static List<Message> Messages = new List<Message>();/// <summary>/// 消息订阅/// </summary>public static void Subscribe(string topic, string key, Action<object> action){var model = Messages.Where(item => item.Topic == topic && item.Key == key).FirstOrDefault();if (model == null){model = new Message(){Topic = topic,Key = key,};Messages.Add(model);model.Actions.Add(action);}else if(model.Actions.Find(item => item.Equals(action)) == null){model.Actions.Add(action);}}/// <summary>/// 消息推送/// </summary>public static void Publish(string topic, string key, object value){var model = Messages.Where(item => item.Topic == topic && item.Key == key).FirstOrDefault();if (model != null){model.Actions.ForEach(item =>{item(value);});}}}public class Message{public string Topic { get; set; }public string Key { get; set; }public List<Action<object>> Actions { get; set; } = new List<Action<object>>();}}

使用

static void Main(string[] args)
{MessageHelper.Subscribe("Topic1", "key1", (res) =>{var _res = ((string Name, int Age))res;Console.WriteLine(_res.ToString());Console.WriteLine("我被调用了1");});MessageHelper.Subscribe("Topic2", "key1", (res) =>{Console.WriteLine("我被调用了2");});MessageHelper.Subscribe("Topic3", "key1", (res) =>{Console.WriteLine("我被调用了3");});MessageHelper.Subscribe("Topic4", "key1", (res) =>{Console.WriteLine("我被调用了4");});MessageHelper.Publish("Topic1","key1",(Name:"嘟嘟",Sex:"12"));Console.ReadLine();}

注意事项

这里我用了元祖来进行临时变量的传值。元祖如何使用请看我的另一篇文章。元祖用来做临时变量特别好用

C# 元祖,最佳的临时变量。

为了防止重复注入,我加了判断代码。

http://www.hengruixuexiao.com/news/38324.html

相关文章:

  • 凡科网网站系统湖南seo技术培训
  • 全国拿货最便宜的网站网络营销企业有哪些公司
  • 制作网站怎么用图片做背景网络违法犯罪举报网站
  • 做网站学h5还是php最新中国新闻
  • 在线ui设计网站网站怎么做推广和宣传
  • 商城网站流量如何创建属于自己的网站
  • 自己做网站怎么盈利seo排名哪家正规
  • ks2e做网站html底部友情链接代码
  • 登烈建站推广网站的文案
  • 桥西企业做网站佛山seo外包平台
  • 能有javaee独立做网站工资太原百度推广开户
  • wordpress 改成 中文在哪里可以免费自学seo课程
  • 企业官方网站的作用收录查询api
  • 用wordpress建的网站淘宝运营培训课程
  • 专业网站制作设头条权重查询
  • 付费小说网站建设百度一下你就知道官方网站
  • 国资委网站建设百度电脑版
  • 如何做招聘网站对比分析内部搜索引擎优化
  • wordpress点击网页效果郑州纯手工seo
  • 贵阳手机网站建设seo公司上海牛巨微
  • 传奇4端游互联网seo是什么意思
  • 做海报裂变的网站b站入口2024已更新
  • 做公司网站的尺寸一般是多大域名查询ip爱站网
  • 模板网站制作服务介绍如何进行app推广
  • 网站模板设计师要求上海牛巨微网络科技有限公司
  • b站推广计划网络营销课程实训总结
  • 美国人做的古文字网站seo优质友链购买
  • 响应式网站做mip企业网站建设报价表
  • 怎么创建网站论坛重庆森林
  • wordpress更改密码西安seo关键词排名优化