Migrieren von Funktions-Apps von der Azure Service Bus-Erweiterung Version 4.x zu Version 5.x

In diesem Artikel werden Überlegungen zum Aktualisieren Ihrer vorhandenen Azure Functions-Anwendungen erläutert, die Version 4.x der Azure Service Bus-Erweiterung verwenden, um die neuere Version (Version 5.x) der Erweiterung zu verwenden. Die Migration von Version 4.x zu Version 5.x der Azure Service Bus-Erweiterung beinhaltet Breaking Changes für Ihre Anwendung.

Wichtig

Die Azure Service Bus-Erweiterung Version 4.x wurde am 31. März 2025 eingestellt. Anwendungen können mit der Erweiterung weiterhin funktionieren, aber sie wird nicht mehr gewartet oder unterstützt. Migration auf Erweiterungsversion 5.x, die die unterstützte Azure.Messaging.ServiceBus Bibliothek verwendet. Die Microsoft.Azure.ServiceBus von Version 4.x verwendete Bibliothek wurde am 30. September 2026 außer Betrieb genommen. Details zur Einstellung der Bibliothek finden Sie in der Ankündigung zur Einstellung.

Dieser Artikel führt Sie durch den Prozess der Migration Ihrer Funktions-App zur Ausführung mit Version 5.x der Azure Service Bus-Erweiterung. Da Projektupgradeanweisungen sprachabhängig sind, stellen Sie sicher, dass Sie Ihre Entwicklungssprache über den Selektor oben im Artikel auswählen.

Notiz

Diese Migration gilt nicht für Go-Funktions-Apps. First-Class Go-Unterstützung war mit Version 4.x der Azure Service Bus-Erweiterung nicht verfügbar. Für die aktuelle Go-Trigger-Anleitung siehe den Azure Service Bus Trigger.

Aktualisieren der Erweiterungsversion

.NET-Funktionen verwenden Erweiterungen, die als NuGet-Pakete im Projekt installiert sind. Je nach Ihrem Functions-Prozessmodell variiert das zu aktualisierende NuGet-Paket.

Funktionsprozessmodell Azure Service Bus-Erweiterung Empfohlene Version
Prozessinternes Modell Microsoft.Azure.WebJobs.Extensions.ServiceBus >= 5.13.4
Isoliertes Workermodell Microsoft.Azure.Functions.Worker.Extensions.ServiceBus >= 5.14.1

Aktualisieren Sie Ihre Projektdatei (.csproj), um die neueste Erweiterungsversion für Ihr Prozessmodell zu verwenden. Die folgende .csproj Datei verwendet Version 5 der Azure Service Bus-Erweiterung.

<Project Sdk="Azure.Functions.Sdk/1.0.0">
  <PropertyGroup>
    <TargetFramework>net10.0</TargetFramework>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="Microsoft.Azure.Functions.Worker" Version="2.52.0" />
    <PackageReference Include="Microsoft.Azure.Functions.Worker.Extensions.ServiceBus" Version="5.16.0" />
  </ItemGroup>
  <ItemGroup>
    <None Update="host.json">
      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
    </None>
    <None Update="local.settings.json">
      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
      <CopyToPublishDirectory>Never</CopyToPublishDirectory>
    </None>
  </ItemGroup>
</Project>

Aktualisieren des Erweiterungspakets

Standardmäßig werden Erweiterungspakete von anderen Funktions-Apps als .NET verwendet, um Bindungserweiterungen zu installieren. Die Azure Service Bus Version 5-Erweiterung ist Teil des Erweiterungspakets, Version 4.

Um Ihre Anwendung so zu aktualisieren, dass sie das neueste Erweiterungspaket verwendet, aktualisieren Sie host.json. Die folgende host.json Datei verwendet Version 4 des Erweiterungspakets.

{
  "version": "2.0",
  "extensionBundle": {
    "id": "Microsoft.Azure.Functions.ExtensionBundle",
    "version": "[4.*, 5.0.0)"
  }
}

Ändern Ihres Funktionscodes

Die Azure Functions Azure Service Bus-Erweiterung Version 5 basiert auf der Azure.Messaging.ServiceBus SDK Version 3, die Unterstützung für die Message Klasse entfernt hat. Verwenden Sie stattdessen den ServiceBusReceivedMessage Typ, um Nachrichtenmetadaten aus Service Bus-Warteschlangen und Abonnements zu empfangen.

Nächste Schritte