AI agents: use the documentation index at llms.txt to locate machine-readable pages. This section is indexed by https://docs.particular.net/nservicebus/llms.txt. The markdown version of this page is served as plain text. An MCP server at /mcp serves the same content via the search_docs and read_doc tools; it is read-only and needs no credentials. Markdown versions of documentation pages are available by appending .md to the page URL. Directory URLs use index.md. They are served as text/plain because some retrieval backends reject text/markdown.

Roslyn analyzers for Azure Functions

Starting in version 4.2, the Azure Functions host package comes with Roslyn analyzers that analyze the NServiceBus code to prevent the use of API calls that are not applicable in a serverless environment.

Endpoint configuration API

PurgeOnStartup is not supported

  • Rule ID: NSBWFUNC004
  • Severity:Error
  • Example message: Azure Functions endpoints do not support PurgeOnStartup.

LimitMessageProcessingTo is not supported

  • Rule ID: NSBWFUNC005
  • Severity:Error
  • Example message: Concurrency-related settings are controlled via the Azure Function host.json configuration file.

DefineCriticalErrorAction is not supported

  • Rule ID: NSBWFUNC006
  • Severity:Error
  • Example message: Azure Functions endpoints do not control the application lifecycle and should not define behavior in the case of critical errors.

SetDiagnosticsPath is not supported

  • Rule ID: NSBWFUNC007
  • Severity:Error
  • Example message: Azure Functions endpoints should not write diagnostics to the local file system. Use CustomDiagnosticsWriter to write diagnostics to another location.

MakeInstanceUniquelyAddressable is not supported

  • Rule ID: NSBWFUNC008
  • Severity:Error
  • Example message: Azure Functions endpoints have unpredictable lifecycles and should not be uniquely addressable.

UseTransport is not supported

  • Rule ID: NSBWFUNC009
  • Severity:Warning
  • Example message: The package configures Azure Service Bus transport by default. Use ServiceBusTriggeredEndpointConfiguration.Transport to access the transport configuration.

OverrideLocalAddress is not supported

  • Rule ID: NSBWFUNC010
  • Severity:Error
  • Example message: The NServiceBus endpoint address in Azure Functions is determined by the ServiceBusTrigger attribute.

Options API

RouteReplyToThisInstance is not supported

  • Rule ID: NSBWFUNC011
  • Severity:Error
  • Example message: Azure Functions instances cannot be directly addressed as they have a highly volatile lifetime. Use 'RouteToThisEndpoint' instead.

RouteToThisInstance is not supported

  • Rule ID: NSBWFUNC012
  • Severity:Error
  • Example message: Azure Functions instances cannot be directly addressed as they have a highly volatile lifetime. Use 'RouteToThisEndpoint' instead.

Transport Settings API

TransportTransactionMode is not supported

  • Rule ID: NSBWFUNC013
  • Severity:Error
  • Example message: Transport TransactionMode is controlled by the Azure Service Bus trigger and cannot be configured via the NServiceBus transport configuration API when using Azure Functions.

MaxAutoLockRenewalDuration is not supported

  • Rule ID: NSBWFUNC014
  • Severity:Error
  • Example message: Azure Functions endpoints do not control the message receiver and cannot decide the lock renewal duration.

PrefetchCount is not supported

  • Rule ID: NSBWFUNC015
  • Severity:Error
  • Example message: Message prefetching is controlled by the Azure Service Bus trigger and cannot be configured via the NServiceBus transport configuration API when using Azure Functions.

PrefetchMultiplier is not supported

  • Rule ID: NSBWFUNC016
  • Severity:Error
  • Example message: Message prefetching is controlled by the Azure Service Bus trigger and cannot be configured via the NServiceBus transport configuration API when using Azure Functions.

TimeToWaitBeforeTriggeringCircuitBreaker is not supported

  • Rule ID: NSBWFUNC017
  • Severity:Error
  • Example message: Azure Functions endpoints do not control the message receiver and cannot access circuit breaker settings.