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 API de version de compatibilité MVC, telles que CompatibilityVersion et SetCompatibilityVersion, sont supprimées dans ASP.NET Core 11. Ces API étaient sans effet à partir d’ASP.NET Core 3.0 et sont marquées comme obsolètes depuis ASP.NET Core 6.
Version introduite
.NET 11 Preview 7
Comportement antérieur
Auparavant, les API de version de compatibilité existaient et pouvaient être appelées, mais elles produisaient un avertissement d’obsoletion au moment de la génération et n’avaient aucun effet au moment de l’exécution :
services.AddMvc()
.SetCompatibilityVersion(CompatibilityVersion.Latest);
Nouveau comportement
À compter de ASP.NET Core 11, ces API n’existent plus. Le code qui les appelle ne parvient pas à compiler et les fichiers binaires existants qui les référencent échouent lors de l’exécution avec un MissingMethodException ou TypeLoadException.
Type de changement cassant
Cette modification peut affecter la compatibilité des sources et la compatibilité binaire.
Raison du changement
Les API ont été marquées obsolètes depuis ASP.NET Core 6 et n’ont rien fait depuis ASP.NET Core 3.0, de sorte qu’elles n’ont servi aucune valeur. Pour plus d’informations, consultez dotnet/aspnetcore#67077.
Action recommandée
Supprimez toutes les utilisations de ces API. Par exemple, modifiez le code suivant :
services.AddMvc()
.SetCompatibilityVersion(CompatibilityVersion.Latest);
À :
services.AddMvc();
API affectées
Microsoft.Extensions.DependencyInjection.MvcCoreMvcBuilderExtensions.SetCompatibilityVersionMicrosoft.Extensions.DependencyInjection.MvcCoreMvcCoreBuilderExtensions.SetCompatibilityVersionMicrosoft.AspNetCore.Mvc.Infrastructure.ConfigureCompatibilityOptions<TOptions>Microsoft.AspNetCore.Mvc.MvcCompatibilityOptionsMicrosoft.AspNetCore.Mvc.CompatibilityVersion