gpt4 book ai didi

nservicebus - NServiceBus消息上的List

转载 作者:行者123 更新时间:2023-12-02 04:03:46 25 4
gpt4 key购买 nike

我正在使用NServiceBus为应用程序的后端提供动力
JavaScript客户端。因此,在很多情况下,我们的命令
确实需要动态列表(JS中的对象数组,C#中的List)。例如。:

JSON:

{
"listProperty" : [
{
"propertyA" : "value",
"propertyB" : "valueB"
},
{
"propertyQ" : "valueQ"
}
]
}

C#:
class TheCommand : IMessage {
public List<dynamic> ListProperty {get; set;}
}

是否可以使用NServiceBus做到这一点?

-----实验结果-----

对NServiceBus的XML序列化程序进行的一些实验表明,
它不了解动态:
<TheCommand>
<ListProperty>
<Object>
</Object>
</ListProperty>
</TheCommand>

它们只是简单地序列化(和反序列化)为对象,没有任何属性。

(这也与yahoo小组有点交叉。)

最佳答案

通过我们的JS客户端,我们使用了一组REST样式的服务来处理序列化并将消息传递给NSB。我们一直在传递可变长度数组。

关于动态结构,NSB要求对消息进行专门格式化以激活其处理程序。实现自己的序列化器可能是一个好主意。您必须实现NServiceBus.Serialization.IMessageSerializer。除此之外,您还必须能够告诉NSB使用该序列化程序,并且您可能拥有自己的自定义配置。看一看ConfigureXmlSerializer类。

我还刚刚看到在3.0分支中实现了JSON / BSON序列化器。我从未使用过它,但是它可能满足您的需求。

关于nservicebus - NServiceBus消息上的List <dynamic>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8804727/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com