Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of mappen te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen om mappen te wijzigen.
Opmerking
Microsoft-ondersteuningstechnici zijn beschikbaar om problemen met uw toepassing te diagnosticeren. Als u uw probleem niet kunt vaststellen nadat u dit artikel hebt doorlopen, kunt u een ondersteuningsticket indienen door naar de sectie Help-ondersteuning>en probleemoplossing van de resource duurzame taakplanner in Azure Portal te gaan.
Verbindingsreeks en toegang tot duurzame taakplanner controleren
Wanneer uw app niet wordt uitgevoerd zoals verwacht, controleert u eerst of u het volgende hebt:
- De juiste verbindingsreeksindeling.
 - Verificatie juist ingesteld.
 
Lokale ontwikkeling
Controleer de verbindingsreeks, die deze indeling moet hebben:
Endpoint=http://localhost:<port number>;Authentication=None. Zorg ervoor dat het poortnummer het nummer is dat is toegewezen aan8080de container waarop de durable task scheduler-emulator wordt uitgevoerd.Zorg er samen met de durable task scheduler-emulator voor dat de Azure Storage-emulator, Azurite, is gestart. Azurite is nodig voor onderdelen van de app die betrekking hebben op Functions.
Wordt uitgevoerd in Azure
Controleer uw app op de omgevingsvariabelen
DURABLE_TASK_SCHEDULER_CONNECTION_STRINGenTASKHUB_NAME.Controleer de waarde van
DURABLE_TASK_SCHEDULER_CONNECTION_STRING. Controleer met name of het scheduler-eindpunt en het verificatietype juist zijn. De verbindingsreeks moet als volgt worden opgemaakt wanneer u het volgende gebruikt:- 
              Door de gebruiker toegewezen beheerde identiteit: 
Endpoint={scheduler endpoint};Authentication=ManagedIdentity;ClientID={client id}, waarclient idis de client-id van de identiteit. - 
              Door het systeem toegewezen beheerde identiteit: 
Endpoint={scheduler endpoint};Authentication=ManagedIdentity 
- 
              Door de gebruiker toegewezen beheerde identiteit: 
 Zorg ervoor dat de vereiste RBAC-machtiging (op rollen gebaseerd toegangsbeheer) wordt verleend aan de identiteit die toegang nodig heeft tot de opgegeven taakhub of scheduler.
- Zorg er bij het openen van het dashboard voor dat de machtiging is toegewezen aan uw eigen identiteit (e-mail).
 
Als door de gebruiker toegewezen beheerde identiteit wordt gebruikt, controleert u of de identiteit is toegewezen aan uw app.
Fout bij het implementeren van de Durable Functions-app in Azure
Als uw implementatie mislukt met een fout zoals Encountered an error (ServiceUnavailable) from host runtime visual Studio Code, controleert u eerst uw app om ervoor te zorgen dat de vereiste omgevingsvariabelen correct zijn ingesteld. Implementeer vervolgens uw app opnieuw. Als er een fout optreedt bij het laden van functies, klikt u op de knop Vernieuwen.
Onbekende fout bij het ophalen van details van deze taakhub
Als u een Unknown error retrieving details of this task hub fout krijgt op het dashboard van de durable task scheduler, kan dit de volgende reden zijn:
Aan uw identiteit (e-mail) is niet de vereiste machtiging toegewezen voor die taakhub. Volg de instructies om de machtiging te verlenen en open het dashboard opnieuw.
Uw taakhub is verwijderd.
Kan resource niet verwijderen
Zorg ervoor dat u alle taakhubs in de durable task scheduler-omgeving verwijdert. Als u dat nog niet hebt gedaan, wordt het volgende foutbericht weergegeven:
{
  "error": {
    "code": "CannotDeleteResource",
    "message": "Cannot delete resource while nested resources exist. Some existing nested resource IDs include: 'Microsoft.DurableTask/schedulers/YOUR_SCHEDULER/taskhubs/YOUR_TASKHUB'. Please delete all nested resources before deleting this resource."
  }
}
Kan het project niet bepalen om te bouwen
Als u na het starten van Azurite de volgende fout tegenkomt: “Can't determine Project to build. Expected 1 .csproj or .fsproj but found 2”
- Verwijder de bin - en obj-mappen in uw app.
 - Probeer 
func startopnieuw uit te voeren. 
Kan geen systeemeigen binaire bestanden vinden voor ARM
Als u gRPC-fouten ziet met betrekking tot het niet vinden van systeemeigen binaire bestanden voor ARM (zoals op een Mx Mac), moet u mogelijk de volgende tijdelijke oplossing toevoegen aan het einde van het extensions.csproj bestand.
<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <TargetFramework>net6.0</TargetFramework>
    <WarningsAsErrors></WarningsAsErrors>
    <DefaultItemExcludes>**</DefaultItemExcludes>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="Microsoft.Azure.WebJobs.Extensions.DurableTask" Version="2.13.7" />
    <PackageReference Include="Microsoft.Azure.WebJobs.Extensions.DurableTask.AzureManaged" Version="0.3.0-alpha" />
    <PackageReference Include="Microsoft.Azure.WebJobs.Script.ExtensionsMetadataGenerator" Version="1.1.3" />
  </ItemGroup>
  <!-- Add the below groups/targets to workaround gRPC issues on ARM devices. -->  
  <ItemGroup>
    <PackageReference Include="Contrib.Grpc.Core.M1" Version="2.41.0" />
  </ItemGroup>
  <Target Name="CopyGrpcNativeAssetsToOutDir" AfterTargets="Build">
    <ItemGroup>
       <NativeAssetToCopy Condition="$([MSBuild]::IsOSPlatform('OSX'))" Include="$(OutDir)runtimes/osx-arm64/native/*"/>
    </ItemGroup>
    <Copy SourceFiles="@(NativeAssetToCopy)" DestinationFolder="$(OutDir).azurefunctions/runtimes/osx-arm64/native"/>
  </Target>
</Project>
Problemen met gRPC-runtime
Voor gebruikers van Mx Mac (ARM64) kunt u runtime-problemen ondervinden met gRPC bij het gebruik van duurzame functies. Als tijdelijke oplossing:
Verwijs naar de
2.41.0versie van hetContrib.Grpc.Core.M1NuGet-pakket.Voeg een aangepast nabouwdoel toe dat ervoor zorgt dat de juiste ARM64-versie van de gRPC-bibliotheken kan worden gevonden.
<Project> <ItemGroup> <PackageReference Include="Contrib.Grpc.Core.M1" Version="2.41.0" /> </ItemGroup> <Target Name="CopyGrpcNativeAssetsToOutDir" AfterTargets="Build"> <ItemGroup> <NativeAssetToCopy Condition="$([MSBuild]::IsOSPlatform('OSX'))" Include="$(OutDir)runtimes/osx-arm64/native/*"/> </ItemGroup> <Copy SourceFiles="@(NativeAssetToCopy)" DestinationFolder="$(OutDir).azurefunctions/runtimes/osx-arm64/native"/> </Target> </Project>