Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
| Свойство | Значение |
|---|---|
| Идентификатор правила | CA1708 |
| Заголовок | Идентификаторы должны отличаться не только прописными и строчными буквами |
| Категория | Именование |
| Исправление является критическим или не критическим | Срочное |
| Включен по умолчанию в .NET 10 | Нет |
| Применимые языки | C# и Visual Basic |
Причина
Имена двух типов, членов, параметров или полностью квалифицированных пространств имен идентичны, когда они преобразуются в нижний регистр.
По умолчанию это правило проверяет только видимые извне типы, члены и пространства имен, но это поведение можно настроить.
Описание правила
Идентификаторы пространств имен, типов, членов и параметров не могут отличаться только регистром знаков, поскольку целевые языки, поддерживаемые средой CLR, не обязательно учитывают регистр знаков. Например, Visual Basic является широко используемым языком, не учитывающим регистр.
Устранение нарушений
Выберите такое имя, которое будет уникальным при сравнении с другими идентификаторами в безрегистровом режиме.
Когда лучше отключить предупреждения
Для этого правила отключать вывод предупреждений не следует. Библиотека может быть недоступна для использования на всех языках .NET.
Настройка кода для анализа
Используйте следующий параметр, чтобы выбрать части базы кода для применения этого правила.
Этот параметр можно настроить только для этого правила, для всех правил, к которым он применяется, или для всех правил в этой категории (именование), к которым она применяется. Дополнительные сведения см. в статье Параметры конфигурации правила качества кода.
Включите конкретные поверхности API
Вы можете настроить компоненты базы кода для выполнения этого правила на основе их специальных возможностей, задав параметр api_surface. Например, чтобы указать, что правило должно выполняться только для непубличной поверхности API, добавьте следующую пару "ключ-значение" в файл .editorconfig в ваш проект:
dotnet_code_quality.CAXXXX.api_surface = private, internal
Заметка
Замените XXXX частью CAXXXX идентификатором применимого правила.
Пример нарушения
В следующем примере показано нарушение этого правила.
public class Class1
{
protected string someName;
public string SomeName => someName;
}
В следующем примере показан один из способов устранения нарушения
public class Class1
{
protected string _someName;
public string SomeName => _someName;
}