微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

asp.net core3.1实战篇 RabbitMQ的使用(EasyNetQ的高级用法一)第三篇

在.net core控制台安装

Install-Package EasyNetQ

一:定义公共消息类

namespace Messages
{
    public class TextMessage
    {
        public string Text { get; set; } 
    }
}

二: 发布者代码

using System;
using EasyNetQ;
using Messages;

namespace Publisher
{
    class Program
    {
        static void Main(string[] args)
        {
            using (var bus = RabbitHutch.CreateBus("host=localhost"))
            {
                var input = "";
                Console.WriteLine("Enter a message. 'Quit' to quit.");
                while ((input = Console.ReadLine()) != "Quit")
                {
                    bus.Publish(new TextMessage
                        {
                            Text = input
                        });
                }
            }
        }
    }
}

三: 订阅代码

using System;
using EasyNetQ;
using Messages;

namespace Subscriber
{
    class Program
    {
        static void Main(string[] args)
        {
            using (var bus = RabbitHutch.CreateBus("host=localhost"))
            {
                bus.Subscribe<TextMessage>("test", HandleTextMessage);

                Console.WriteLine("Listening for messages. Hit <return> to quit.");
                Console.ReadLine();
            }
        }

        static void HandleTextMessage(TextMessage textMessage)
        {
            Console.ForegroundColor = ConsoleColor.Red;
            Console.WriteLine("Got message: {0}", textMessage.Text);
            Console.ResetColor();
        }
    }
}

同时启动两者控制台代码

 

在这里插入图片描述

 

在这里插入图片描述

原文地址:https://www.cnblogs.com/shijiehaiyang/p/15048514.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐