Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Le API della versione di compatibilità MVC, ad esempio CompatibilityVersion e SetCompatibilityVersion, vengono rimosse in ASP.NET Core 11. Queste API non producevano alcun effetto a partire da ASP.NET Core 3.0 e sono state contrassegnate come obsolete a partire da ASP.NET Core 6.
Versione introdotta
.NET 11 Preview 7
Comportamento precedente
In precedenza, le API della versione di compatibilità esistevano e potevano essere chiamate, ma generavano un avviso di obsoletità in fase di compilazione e non avevano alcun effetto in fase di esecuzione:
services.AddMvc()
.SetCompatibilityVersion(CompatibilityVersion.Latest);
Nuovo comportamento
A partire da ASP.NET Core 11, queste API non esistono più. Il codice che li richiama non viene compilato e i binari esistenti che vi fanno riferimento non riescono a essere eseguiti con un MissingMethodException o un TypeLoadException.
Tipo di cambiamento che interrompe la compatibilità
Questa modifica può influire sulla compatibilità dell'origine e sulla compatibilità binaria.
Motivo della modifica
Le API sono state contrassegnate come obsolete da ASP.NET Core 6 e non hanno fatto nulla da ASP.NET Core 3.0, quindi non hanno servito alcun valore. Per altre informazioni, vedere dotnet/aspnetcore#67077.
Azione consigliata
Rimuovere tutti gli utilizzi di queste API. Ad esempio, modificare il codice seguente:
services.AddMvc()
.SetCompatibilityVersion(CompatibilityVersion.Latest);
A:
services.AddMvc();
Le API interessate
Microsoft.Extensions.DependencyInjection.MvcCoreMvcBuilderExtensions.SetCompatibilityVersionMicrosoft.Extensions.DependencyInjection.MvcCoreMvcCoreBuilderExtensions.SetCompatibilityVersionMicrosoft.AspNetCore.Mvc.Infrastructure.ConfigureCompatibilityOptions<TOptions>Microsoft.AspNetCore.Mvc.MvcCompatibilityOptionsMicrosoft.AspNetCore.Mvc.CompatibilityVersion