Анализ диагностического кода в приложениях ASP.NET Core

Анализаторы платформы компилятора .NET проверяют код приложения на наличие проблем с качеством кода и стилем.

В этой статье содержатся ссылки на определенные диагностические сообщения для ASP.NET Core. Дополнительные сведения о диагностике .NET см. в разделе "Обзор анализа исходного кода .NET".

Коды диагностики

В следующей таблице перечислены диагностические данные, доступные для приложений ASP.NET Core.

Замечание

Не все диагностики доступны в более ранних версиях ASP.NET Core.

Идентификатор диагностики Message
ASP0000 Не вызывайте IServiceCollection.BuildServiceProvider в ConfigureServices
ASP0001 У промежуточного слоя авторизации неправильно настроен
ASP0003 Не используйте атрибуты привязки модели с обработчиками маршрутов
ASP0004 Не используйте результаты действий с обработчиками маршрутов
ASP0005 Не добавляйте атрибут в метод, вызываемый лямбда-обработчиком маршрута
ASP0006 Не используйте нелитеральные порядковые номера
ASP0007 Параметр маршрута и необязательный аргумент не совпадают
ASP0008 Не используйте ConfigureWebHost с WebApplicationBuilder.Host
ASP0009 Не используйте Configure и WebApplicationBuilder.WebHost
ASP0010 Не используйте UseStartup с WebApplicationBuilder.WebHost
ASP0011 Предлагается использовать builder.Logging вместо Host.ConfigureLogging или WebHost.ConfigureLogging.
ASP0012 Предлагается использовать builder.Services вместо Host.ConfigureServices или WebHost.ConfigureServices
ASP0013 Предложить переключиться с использования Configure методов на WebApplicationBuilder.Configuration
ASP0014 Рекомендуем использовать регистрацию маршрутов верхнего уровня
ASP0015 Рекомендуется использовать IHeaderDictionary свойства
ASP0016 Не возвращайте значение из RequestDelegate
ASP0017 Недопустимый шаблон маршрута
ASP0018 Неиспользуемый параметр маршрута
ASP0019 Предложение использования IHeaderDictionary.Append или индексатора
ASP0020 Сложные типы, на которые ссылаются параметры маршрута, должны поддаваться синтаксическому анализу.
ASP0021 Тип возвращаемого BindAsync метода должен быть ValueTask<T>
ASP0022 Конфликт маршрутов, обнаруженный между обработчиками маршрутов (минимальные приложения API)
ASP0023 Конфликт маршрутов, обнаруженный между обработчиками маршрутов
ASP0024 Обработчик маршрутов имеет несколько параметров с атрибутом [FromBody]
ASP0025 Использование AddAuthorizationBuilder для регистрации служб авторизации и создания политик
ASP0026 [Authorize] переопределяется [AllowAnonymous] из "более удалённого местоположения"
ASP0027 Ненужное public Program объявление класса
ASP0028 Рекомендуется использовать IPAddress.IPv6Any вместо IPAddress.Any
BL0001 Параметр компонента должен иметь открытые методы установки
BL0002 Компонент имеет несколько CaptureUnmatchedValues параметров
BL0003 Параметр компонента с CaptureUnmatchedValues имеет неверный тип
BL0004 Параметр компонента должен быть общедоступным
BL0005 Параметр компонента не должен быть задан вне его компонента
BL0006 Не используйте типы RenderTree
BL0007 Параметр {0} компонента должен быть автоматическим свойством
BL0008 Параметры компонента должны быть автоматическими свойствами
MVC1000 Следует избегать использования IHtmlHelper.Partial
MVC1001 Фильтры нельзя применять к методам обработчика страниц
MVC1002 Атрибут маршрута не может применяться к методам обработчика страниц
MVC1003 Атрибуты маршрута не могут применяться к моделям страниц
MVC1004 Переименование привязанного параметра модели
MVC1005 Невозможно использовать UseMvc с маршрутизацией конечных точек
MVC1006 Методы, содержащие помощники тегов (TagHelpers), должны быть асинхронными и возвращать Task.