Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Les WithOpenApi méthodes ont été déconseillées dans .NET 10. L’appel de ces méthodes produit désormais le diagnostic ASPDEPR002 au moment de la compilation et un avertissement standard Obsolete qui indique :
WithOpenApi est déconseillé et sera supprimé dans une prochaine version. Pour plus d’informations, consultezhttps://aka.ms/aspnet/deprecate/002.
Version introduite
.NET 10 Preview 7
Comportement précédent
Auparavant, vous pouvez utiliser la méthode d’extension WithOpenApi sans avertissements :
app.MapGet("/weather", () => ...)
.WithOpenApi(); // No warnings.
Nouveau comportement
À compter de .NET 10, l’utilisation de la WithOpenApi méthode d’extension génère un avertissement du compilateur :
app.MapGet("/weather", () => ...)
.WithOpenApi(); // Warning ASPDEPR002: WithOpenApi is deprecated...
Toutefois, l’appel compile toujours et s’exécute.
Type de changement cassant
Cette modification peut affecter la compatibilité source .
Raison de la modification
WithOpenApi Fonctionnalité en double maintenant fournie par le pipeline de génération de documents OpenAPI intégré. La dépréciation simplifie la surface de l’API et se prépare à sa suppression éventuelle.
Action recommandée
Supprimez les .WithOpenApi() appels de votre code.
Si vous avez utilisé
Microsoft.AspNetCore.OpenApipour la génération de documents, utilisez la méthode d’extension AddOpenApiOperationTransformer<TBuilder>(TBuilder, Func<OpenApiOperation,OpenApiOperationTransformerContext,CancellationToken,Task>) .Avant:
using Microsoft.AspNetCore.OpenApi; var builder = WebApplication.CreateBuilder(); var app = builder.Build(); app.MapGet("/weather", () => ...) .WithOpenApi(operation => { // Per-endpoint tweaks operation.Summary = "Gets the current weather report."; operation.Description = "Returns a short description and emoji."; return operation; }); app.Run();Après :
using Microsoft.AspNetCore.OpenApi; var builder = WebApplication.CreateBuilder(); var app = builder.Build(); app.MapGet("/weather", () => ...) .AddOpenApiOperationTransformer((operation, context, ct) => { // Per-endpoint tweaks operation.Summary = "Gets the current weather report."; operation.Description = "Returns a short description and emoji."; return Task.CompletedTask; }); app.Run();Si vous avez utilisé
Swashbucklepour la génération de documents, utilisez l’APIIOperationFilter.Si vous avez utilisé
NSwagpour la génération de documents, utilisez l’APIIOperationProcessor.