我想配置NServiceBus实例以使用SendLocal
方法,使用以下代码可以正常工作:
var bus = NServiceBus.Configure.With()
.StructureMapBuilder()
.XmlSerializer()
.MsmqTransport()
.PurgeOnStartup(true)
.UnicastBus()
.LoadMessageHandlers()
.DoNotAutoSubscribe()
.CreateBus()
.Start();
bus.SendLocal(new MyMessage());
但是,这样做会导致立即处理消息。我希望总线不处理消息,但稍后使用另一个NServiceBus实例在另一个AppDomain中处理它。
有可能吗?
答案 0 :(得分:1)
您可以将Bus.Send(msg)用于另一个NServiceBus端点,当NSB实例启动时,它可以处理该消息。
注意,您需要在app app中配置其他服务的端点,如下所示
<UnicastBusConfig>
<MessageEndpointMappings>
<add Messages="MYCO.Messages.MyMessage" Endpoint="MyMessage.Another.Endpoint@localhost"/>
</MessageEndpointMappings>
</UnicastBusConfig>