【问题标题】:How to make nservicebus persist saga in-memory for self-host server如何使 nservicebus 为自托管服务器在内存中持久保存 saga
【发布时间】:2010-09-14 14:22:31
【问题描述】:

在我的自托管服务器中,我以这种方式配置 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:168 行

,我认为这是因为缺少 saga persister。

在通用主机中,通过从命令行传递“NServiceBus.Lite”,使用内存中的持久化器。如何配置自托管服务器以使用内存中的 saga 持久性?

谢谢!

【问题讨论】:

    标签: nservicebus


    【解决方案1】:

    在 2.0 中,InMemorySagapersister 是宿主的一部分。因此,如果您使用的是 2.0,我建议您将持久化器复制并粘贴到您自己的项目中,或者添加对主机的引用。

    持久化器通过添加配置:

    .InMemorySagaPersister() 到您的配置调用。

    【讨论】:

    • 谢谢!我必须使用以下方法使其工作:Configure.Instance.Configurer.ConfigureComponent(ComponentCallModelEnum.Singleton);
    猜你喜欢
    • 1970-01-01
    • 2012-02-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多