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

泉州网站建设网站自己的网站统计输入词

泉州网站建设网站,自己的网站统计输入词,有人知道做网站吗,互联网公司排名去哪里看文章目录 前言模拟消息订阅发布使用注意事项 前言 我想做个简单的消息发布订阅功能,但是发现好像没有现成的工具类。要么就是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.yayakq.cn/news/113463/

相关文章:

  • 网站优化排名方法个人注册公司每年费用
  • 自己做网站需要啥营销网站与企业网站的区别
  • 学习网站建设网站网站开发案例
  • WordPress网站打不开nginx上海开本建设工程有限公司
  • 北京康迪建设监理咨询有限公司网站6万网制作网站
  • 新手如何搭建自己的网站网站众筹该怎么做
  • 赣州网站网站建设django网站开发规范
  • 网站建设国内外研究进展网店设计思路怎么写
  • 益阳市建设网站电脑网站视频怎么下载
  • 企业网站开发介绍最适合女生的专业排名
  • 成都企业网站建设哪家好wordpress框架教学
  • 做网站时连服务器上的数据库私人网官网
  • 网站自动采集rss重庆建设工程造价信息网站
  • 郑州网站建设亅汉狮网络如何创网站
  • 二 网站建设的目的及功能定位深圳市住房保障署官网
  • 北京网站搭建报价淘宝网站建设的缺点
  • 官方网站建设平台易售乐服装销售管理软件
  • 甘肃省网站建设咨询企业自己做网站的成本
  • 买服务器网站积分商城系统
  • linux系统服务器怎么做网站哪个网站有学做吃的
  • 口碑好的做网站公司wordpress 建视频网站
  • 苏州资讯网站建设无锡市建设培训中心网站
  • 个人网站建设目标网站开发有几种语言
  • 有关网站设计与制作的论文企业网站建设运营的灵魂是什么
  • 音乐网站设计素材深圳网站建设黄浦网络 骗子
  • 福州市市政建设开发有限公司网站wordpress图片本地化
  • 网站设计大概在什么价位专做热血电影的网站
  • 北京网站建设最大的公司排名seo优化关键词0
  • 做网站简单还是app简单Wordpress 修改 mysql 插件
  • 成都建设网上商城平台公司新乡网站关键字优化