0
2013-03-28 10:18:32,374 [Worker.5] 
WARN  NServiceBus.Unicast.UnicastBus [(null)] <(null)> - 
Received an empty message - ignoring.

我有一个从 mvc4 网站到消息处理器的 bus.send("server", command) 客户端。消息处理器被设置为默认值,没有任何自定义初始化。

这是我在 global.asax 中网站端的配置

        Configure.With()
            .StructureMapBuilder(container)
            .JsonSerializer()
            .Log4Net()
            .MsmqTransport()
                .IsTransactional(false)
                .PurgeOnStartup(true)
            .UnicastBus()
                .ImpersonateSender(false)
            .CreateBus()
            .Start(() => Configure.Instance.ForInstallationOn<NServiceBus.Installation.Environments.Windows>().Install());         

我查看了NServicebus 发布事件 - 收到空消息,但这没有帮助,我没有只读属性。

4

2 回答 2

0

该问题类似于 OP 中的链接问题。我发现序列化方法需要在发送方和服务器之间匹配。我必须在服务器端添加自定义初始化并添加 defaultbuilder 以及 json 序列化程序以匹配 Web 端,以便消息正常工作。

于 2013-03-28T18:02:36.083 回答
0

我发现的另一件事是,我正在使用IWantCustomInitialization以下配置:

Configure.With(typeof(TransactionDetailsHandler).Assembly) // this is problematic one
                .CastleWindsorBuilder(container)
                .DefaultBuilder();

我没有在配置中指定我的消息的程序集类型。添加解决了问题。

于 2013-06-01T22:05:55.823 回答