【发布时间】:2013-03-22 23:32:20
【问题描述】:
查看development notes from Microsoft for PHP Azure bus,我看到PHP 总线库有$message->getBody(),而C# 库有message.GetBody<T>(); 并需要一个类型。
我们如何以灵活的方式在 PHP/C# 之间发送消息(作为简单的类),即使收到更新的消息版本也不会中断?
【问题讨论】:
-
您尝试了什么,什么没有奏效?您的问题没有显示任何尝试自行解决?去你问题的根源
doesn't break should a newer message version be received我会说avoid using generic methods, but rather do the serialization/deserialization on your own。 -
@astaykov 感谢您的回复,总线的样板代码是简单的部分,是的,我们可以发送消息 OK - 我的问题是这些消息应该是什么?我曾考虑过 JSON,但确实需要一些指导,因为我对 Azure PHP 到 C# 的了解可能很危险!此外,C# 方法似乎只接受 GetBody
() 的泛型类型 -
说到这……你是对的。只有 Generic GetBody,但也有重载 GetBody<T>(XmlObjectSerializer serializer),您可以使用它来注入您自己的 XmlObjectSerializer 实例。在这种情况下,您的
T可能是一个非常简单的 .NET 对象,具有单个文本属性,即 JSON 有效负载。我认为这是在不更改队列逻辑的情况下处理多种消息格式的最佳方式。 -
Azure Java Service Bus SDK 是否也存在此问题?
标签: azure integration servicebus