【发布时间】:2014-03-03 17:32:34
【问题描述】:
我通过 Pub-Sub 模型通过 ZMQ 发送数据。
我有 2 个类,一个叫 A 类,包含两个字符串,另一个是 B 类,包含两个双精度。
我的发布者程序将序列化 A 类,有时还会序列化 B 类,并通过 ZMQ 发送它们。我的客户端程序如何知道发送了哪个 typeof 类并相应地转换它?我尝试执行以下代码,消息框显示 MsgPack.MessagePackObject。
var ser = MsgPack.Serialization.MessagePackSerializer.Create<object>();
object unpack = ser.Unpack(stream);
MessageBox.Show(unpack.GetType().ToString());
我希望得到像 Class A 或 Class B 这样的类型,我会做一个 if 语句。如果类型是 A 类,我将其转换为 A 类并执行所需的操作。如果类型是 B 类,我将其转换为 B 类并执行所需的操作。
我已经搜索了 1 小时的答案,但我找不到。希望SO会有所帮助。请对我温柔一点,因为我是新手。谢谢。
【问题讨论】:
-
查看主题和发布/订阅信封。 zguide.zeromq.org/page%3aall#Pub-Sub-Message-Envelopes