Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
API-интерфейсы версии совместимости MVC, такие как CompatibilityVersion и SetCompatibilityVersion, удаляются в ASP.NET Core 11. Эти API не выполняли никаких действий, начиная с ASP.NET Core 3.0, и помечены как устаревшие, начиная с ASP.NET Core 6.
Представленная версия
.NET 11 предварительная версия 7
Предыдущее поведение
Ранее API версии совместимости существовали и могли вызываться, но на этапе сборки они выдавали предупреждение об устаревании и не имели никакого эффекта во время выполнения:
services.AddMvc()
.SetCompatibilityVersion(CompatibilityVersion.Latest);
Новое поведение
Начиная с ASP.NET Core 11 эти API больше не существуют. Код, который обращается к ним, не компилируется, а существующие бинарные файлы, которые на них ссылаются, завершаются с ошибкой во время выполнения, выдавая MissingMethodException или TypeLoadException.
Тип разрушающего изменения
Это изменение может повлиять на совместимость источников и совместимость двоичных файлов.
Причина изменения
API помечены как устаревшие начиная с ASP.NET Core 6 и ничего не делали начиная с ASP.NET Core 3.0, поэтому не приносили никакой пользы. Дополнительные сведения см. в статье dotnet/aspnetcore#67077.
Рекомендуемое действие
Удалите все виды использования этих API. Например, измените следующий код:
services.AddMvc()
.SetCompatibilityVersion(CompatibilityVersion.Latest);
Кому:
services.AddMvc();
Затронутые API
Microsoft.Extensions.DependencyInjection.MvcCoreMvcBuilderExtensions.SetCompatibilityVersionMicrosoft.Extensions.DependencyInjection.MvcCoreMvcCoreBuilderExtensions.SetCompatibilityVersionMicrosoft.AspNetCore.Mvc.Infrastructure.ConfigureCompatibilityOptions<TOptions>Microsoft.AspNetCore.Mvc.MvcCompatibilityOptionsMicrosoft.AspNetCore.Mvc.CompatibilityVersion
ASP.NET Core