Getting Started
Architecture
NServiceBus
Transports
Persistence
ServiceInsight
ServicePulse
ServiceControl
Monitoring
Samples

Upgrade Version 6 to 6.2

Component: NServiceBus

Externalize Windows Performance Counters

The Windows Performance Counters feature has been removed from the NServiceBus NuGet package. It is now available as a separate NuGet package named NServiceBus.Metrics.PerformanceCounters. The new package should be used to write to performance counters when using NServiceBus Versions 6.2 and above.

See Externalize Windows Performance Counters for more information.

TimeToBeReceived for MSMQ

Version 6.2 will no longer set the Dead Letter Queues Flag on messages that have a Time To Be Received(TTBR) set.

See MSMQ Dead Letter Queues for more information and details on how to opt-in to the old behavior.

Externalize Message Property Encryption

The Message Property Encryption feature has been removed from the NServiceBus package. It is now available as a separate NuGet package, NServiceBus.Encryption.MessageProperty. The new package should be used to encrypt message properties when using NServiceBus versions 6.2 and above.

See Externalize Message Property Encryption for more information.

Outbox double opt-in mechanism removed

The requirement to enable the Outbox both in code and in the configuration file has been removed. The NServiceBus/Outbox app setting is no longer required and should be removed.

With NServiceBus 6.2, the Outbox can only be enabled via the code first API. See Enabling the Outbox for more information.

Message Mutator Registration API

A dedicated API to register Message mutators has been added. This should be used instead of registering them directly with the container.

// For NServiceBus version 6.x
endpointConfiguration.RegisterComponents(
    registration: components =>
    {
        components.ConfigureComponent<MyMutator>(DependencyLifecycle.InstancePerCall);
    });

// For NServiceBus version 6.x
endpointConfiguration.RegisterMessageMutator(new MyMutator());

See also Registering message mutators.

Note that, for backward compatibility, registering mutators directly via the dependency injection API will continue to work in all Version 6 releases but will be removed in a future major version.

Assembly Scanning API

The API to control assembly scanning has been moved from EndpointConfiguration to a dedicated API. The ExcludeAssemblies, ExcludeTypes, and ScanAssembliesInNestedDirectories methods on EndpointConfiguration are now marked as obsolete and will be removed in Version 7.

See Assembly Scanning for details on how to control assembly scanning with NServiceBus 6.2.