Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Las API de la versión de compatibilidad de MVC, como CompatibilityVersion y SetCompatibilityVersion, se quitan en ASP.NET Core 11. Estas API no tenían ningún efecto desde ASP.NET Core 3.0 y se marcaron como obsoletas desde ASP.NET Core 6.
Versión introducida
.NET 11 Preview 7
Comportamiento anterior
Anteriormente, existían las API de versión de compatibilidad y podían llamarse, pero generaron una advertencia de obsolescencia en tiempo de compilación y no tuvieron ningún efecto en tiempo de ejecución:
services.AddMvc()
.SetCompatibilityVersion(CompatibilityVersion.Latest);
Nuevo comportamiento
A partir de ASP.NET Core 11, estas API ya no existen. El código que los llama no compila, y los archivos binarios existentes que hacen referencia a ellos generan un error en tiempo de ejecución con un MissingMethodException o un TypeLoadException.
Tipo de cambio disruptivo
Este cambio puede afectar a la compatibilidad de origen y la compatibilidad binaria.
Motivo del cambio
Las API se han marcado como obsoletas desde ASP.NET Core 6 y no hicieron nada desde ASP.NET Core 3.0, por lo que no sirven ningún valor. Para obtener más información, vea dotnet/aspnetcore#67077.
Acción recomendada
Quite los usos de estas API. Por ejemplo, cambie el código siguiente:
services.AddMvc()
.SetCompatibilityVersion(CompatibilityVersion.Latest);
Por:
services.AddMvc();
Las APIs afectadas
Microsoft.Extensions.DependencyInjection.MvcCoreMvcBuilderExtensions.SetCompatibilityVersionMicrosoft.Extensions.DependencyInjection.MvcCoreMvcCoreBuilderExtensions.SetCompatibilityVersionMicrosoft.AspNetCore.Mvc.Infrastructure.ConfigureCompatibilityOptions<TOptions>Microsoft.AspNetCore.Mvc.MvcCompatibilityOptionsMicrosoft.AspNetCore.Mvc.CompatibilityVersion