从NServiceBus 2.6到NServiceBus 3.0的迁移修补程序

从NServiceBus 2.6到NServiceBus 3.0的迁移修补程序,nservicebus,Nservicebus,我有一个现有的NServiceBus2.6应用程序,我想开始移动到3.0。我正在寻找在第一个实例中的最小变化升级。这就像用3.0 Nuget软件包替换2.6 DLL一样简单,还是有其他考虑因素 在大多数情况下,应用程序迁移非常简单,但根据您的配置和环境,您可能需要进行以下更改: 新的端点配置约定可能意味着您需要重命名端点以匹配队列名称(@andreashlund对此有很好的理解) saga、超时、订阅等的持久化现在默认为RavenDb,因此如果使用SQL Server持久化数据,则需要确保必须

我有一个现有的NServiceBus2.6应用程序,我想开始移动到3.0。我正在寻找在第一个实例中的最小变化升级。这就像用3.0 Nuget软件包替换2.6 DLL一样简单,还是有其他考虑因素

在大多数情况下,应用程序迁移非常简单,但根据您的配置和环境,您可能需要进行以下更改:

  • 新的端点配置约定可能意味着您需要重命名端点以匹配队列名称(@andreashlund对此有很好的理解)

  • saga、超时、订阅等的持久化现在默认为RavenDb,因此如果使用SQL Server持久化数据,则需要确保必须正确配置文件和端点配置。对于SQL Server存储,请确保添加对NServiceBus.NHibernate的引用,因为它不再是核心的一部分

  • 错误队列现在使用不同的配置以不同的方式引用。请使用MessageForwardingCaseofFaultConfig而不是常规的MsmqTransportConfig错误属性。您应该仍然能够使用它,但它将首先查找MessageForwardingCaseofFaultConfig

除此之外,我认为您不需要做任何其他事情来让您的升级工作。我修改了一些消息定义,以利用新的ICommand和IEvent接口更清晰地传达意图


无论如何,我相信会有一些特定于您的环境的情况需要进行不同的更改,但我希望这会有所帮助。

谢谢setphenl,配置优于约定的更改是一个很好的提示。更新-Andreas的这篇文章值得注意:更新-新链接