分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 网页技术

EasyNetQ中使用自定义的ISerializer

发布时间:2023-09-06 02:02责任编辑:顾先生关键词:暂无标签

         最近在使用EasyNetQ时,遇到一个问题:c++项目组发送的消息数据不是Json数据,而是自定义的数据格式(各字段+‘|’连接成一个字符串),EasyNetQ中消费消息接收的都是强类型,没办法直接消费一个字符串作为一个消息。没办法只好研究EasyNetQ的源码,发现有一个ISerializer接口,只要实现一个自定义的Serializer并注入即可。

public class GameLogSerializer : ISerializer ???{ ???????public T BytesToMessage<T>(byte[] bytes) ???????{ ???????????//实现自定义的反序列化代码 ???????} ???????public object BytesToMessage(Type type, byte[] bytes) ???????{ ???????????//实现自定义的反序列化代码 ???????} ???????public byte[] MessageToBytes<T>(T message) where T : class ???????{ ???????????//实现自定义的序列化代码 ???????} ???}

            使用Bus的时候注入序列化器:

var bus = RabbitHutch.CreateBus("host", serviceRegister => serviceRegister.Register<ISerializer, GameLogSerializer>());

EasyNetQ中使用自定义的ISerializer

原文地址:https://www.cnblogs.com/focus-lei/p/9262638.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved