C# 从windows窗体应用程序发布NServiceBus 4事件

C# 从windows窗体应用程序发布NServiceBus 4事件,c#,nservicebus,publish-subscribe,C#,Nservicebus,Publish Subscribe,我正在尝试编写一个测试工具来发送NServiceBus命令和事件。我设法让它发送命令,它很高兴地调用publish,但它在应用程序启动时不处理订阅请求,因此publish调用实际上不发送任何消息。 在初始化总线时,如何让NServiceBus处理订阅请求? 以下是目前为止的初始化代码: Bus = Configure.With(LoadAssemblies()) .DefaultBuilder() .U

我正在尝试编写一个测试工具来发送NServiceBus命令和事件。我设法让它发送命令,它很高兴地调用publish,但它在应用程序启动时不处理订阅请求,因此publish调用实际上不发送任何消息。 在初始化总线时,如何让NServiceBus处理订阅请求? 以下是目前为止的初始化代码:

               Bus = Configure.With(LoadAssemblies())
                .DefaultBuilder()
                .UnicastBus()
                .ImpersonateSender(true)
                .DefiningCommandsAs(AllValidCommands)
                .DefiningMessagesAs(AllValidMessages)
                .DefiningEventsAs(AllValidEvents)
                .RavenSubscriptionStorage()
                .CreateBus();

在发布/订阅模式下,您需要确保先运行Publisher,然后再运行subscribe。。。。检查这些链接

这都是您的配置代码吗?看起来您不是在启动总线,而是在创建它。您使用的是什么传输和持久器?是否收到订阅?是否存储订阅?它们是否存储在内存中,但在重新启动后丢失?你到底在测试什么?这只是总线配置代码。总线在使用前启动,可以发送命令。我使用MSMQ作为传输,使用RavenDB作为持久器。订阅请求位于测试线束队列中,但测试线束不处理它们。我正在测试一些运行NserviceBus.Host.Exe并加载端点DLL的windows服务。仅使用此配置代码很难判断发生了什么。联系support@particular.net如果你想进一步讨论的话。我们可以在以后提供答案。另外,我问您正在测试什么的原因是,例如,您可能不应该测试MSMQ是否工作。