什么序列化方法用于ActiveMQ NMS C#对象消息?

时间:2009-08-31 15:46:17

标签: c# .net activemq nms

我打算将Apache NMS用于ActiveMQ消息传递,并且想知道在我发送的对象上将使用什么序列化方法? XML /二进制?什么控制序列化以及如何自定义它?

有没有人有使用C#对象的经验?你知道有什么陷阱吗?

1 个答案:

答案 0 :(得分:4)

默认为IObjectMessage的System.Runtime.Serialization.Formatters.Binary.BinaryFormatter。

你可以通过例如自己设置

IObjectMessage m = session.CreateObjectMessage();

((ActiveMQObjectMessage)m).Formatter=new SoapFormatter();//Or any IFormatter

如果您没有使用默认的BinaryFormatter发送对象,则需要在接收方访问IObjectMessage.Body之前设置格式化程序。

如果您愿意,您也可以发送/接收IByteMessage / ITextMessage,并以您想要的任何方式自行将对象序列化为邮件。