如何使 nservicebus 将 saga 持久保存在自托管服务器的内存中
在我的自托管服务器中,我以这种方式配置 NServiceBus:
NServiceBus.Configure.With()
.Log4Net()
.CastleWindsorBuilder(_container)
.XmlSerializer() // or BinarySerializer()
.MsmqTransport()
.IsTransactional(true)
.UnicastBus()
.LoadMessageHandlers()
.Sagas()
.CreateBus()
.Start();
它在以下位置抛出空引用异常: src\impl\Sagas\NServiceBus.Sagas.Impl\SagaMessageHandler.cs:line 168
,我认为这是因为缺少 saga persister。
在通用主机中,通过从命令行传递“NServiceBus.Lite”,使用内存持久程序。如何配置自托管服务器以使用内存中的 saga 持久器?
谢谢!
In my self host server, I config NServiceBus in this way:
NServiceBus.Configure.With()
.Log4Net()
.CastleWindsorBuilder(_container)
.XmlSerializer() // or BinarySerializer()
.MsmqTransport()
.IsTransactional(true)
.UnicastBus()
.LoadMessageHandlers()
.Sagas()
.CreateBus()
.Start();
It threw null reference exception at:
src\impl\Sagas\NServiceBus.Sagas.Impl\SagaMessageHandler.cs:line 168
, which I figured it is because of missing saga persister.
In generic host, by passing "NServiceBus.Lite" from command line, the in-memory persister is used. How do I configure the self-host server to use in-memory saga persister?
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
在 2.0 中,InMemorySagapersister 是主机的一部分。因此,如果您使用的是 2.0,我建议您将持久器复制并粘贴到您自己的项目中,或者添加对主机的引用。
调用来配置持久化器。
通过将.InMemorySagaPersister() 添加到您的配置
In 2.0 the InMemorySagapersister was part of the host. So if you're on 2.0 I suggest that you either copy and paste the persister to your own project or add a reference to the host.
The persister is configured by adding:
.InMemorySagaPersister() to your config call.