настройке словаря для анализа кода
Анализ кода использует встроенный словарь для проверка идентификаторов в коде для ошибок в орфографии, грамматического регистра и других соглашений об именовании рекомендаций по проектированию .NET. Вы можете создать пользовательский xml-файл словаря для добавления, удаления или изменения терминов, аббревиаций и акронимов в встроенный словарь.
Например, предположим, что код содержал класс DoorKnokker. Анализ кода определяет имя как составное из двух слов: door и knokker. Затем это вызовет предупреждение о том, что knokker не был написан правильно. Чтобы принудительно определить орфографию, можно добавить термин knokker в пользовательский словарь.
Создание пользовательского словаря
Создайте файл с именем CustomDictionary.xml.
Определите пользовательские слова с помощью следующей xml-структуры:
<Dictionary>
<Words>
<Unrecognized>
<Word>knokker</Word>
</Unrecognized>
<Recognized>
<Word></Word>
</Recognized>
<Deprecated>
<Term PreferredAlternate=""></Term>
</Deprecated>
<Compound>
<Term CompoundAlternate=""></Term>
</Compound>
<DiscreteExceptions>
<Term></Term>
</DiscreteExceptions>
</Words>
<Acronyms>
<CasingExceptions>
<Acronym></Acronym>
</CasingExceptions>
</Acronyms>
</Dictionary>
Настраиваемые элементы словаря
Вы можете изменить поведение словаря анализа кода, добавив термины в качестве внутреннего текста следующих элементов в пользовательском словаре:
Словарь,слова/распознанные/word
Чтобы включить термин в список терминов, которые анализ кода идентифицирует как правильно орфографический, добавьте термин в качестве внутреннего текста элемента Dictionary/Words/Recognized/Word. Термины в словаре, слова, распознанные или элементы Word не учитывает регистр.
Пример
<Dictionary>
<Words>
<Recognized>
<Word>knokker</Word>
...
</Recognized>
...
</Words>
...
</Dictionary>
Термины в словаре, слова и распознанные узлы применяются к следующим правилам анализа кода:
CA1701: соблюдайте правильность регистра в составных словах строк ресурса
CA1702: для сложных слов следует использовать правильный регистр
Словарь,слова/нераспознанные/Word
Чтобы исключить термин из списка терминов, которые анализ кода идентифицирует как правильно орфографический, добавьте термин, который следует исключить в качестве внутреннего текста элемента Dictionary/Words/Unrecognized/Word. Термины в словаре,словах/элементах Unrecognized/Word не учитывает регистр.
Пример
<Dictionary>
<Words>
<Unrecognized>
<Word>meth</Word>
...
</Unrecognized>
...
</Words>
...
</Dictionary>
Термины в словаре, слова и нераспознанные узлы применяются к следующим правилам анализа кода:
CA1701: соблюдайте правильность регистра в составных словах строк ресурса
CA1702: для сложных слов следует использовать правильный регистр
Словарь/слова/нерекомендуемые/термины[@PreferredAlternate]
Чтобы включить термин в список терминов, которые анализ кода определяет как нерекомендуемый, добавьте термин в качестве внутреннего текста элемента Dictionary/Words/Deprecated/Term. Нерекомендуемый термин — это слово, которое правильно орфографировано, но не должно использоваться.
Чтобы включить предлагаемый альтернативный термин в предупреждение, укажите альтернативный вариант в атрибуте PreferredAlternate элемента Term. Значение атрибута можно оставить пустым, если вы не хотите предложить альтернативный вариант.
Нерекомендуемый термин в dictionary/Words/Deprecated/Term не учитывает регистр.
Значение атрибута PreferredAlternate учитывает регистр. Используйте вариант Pascal для составных альтернативных вариантов.
Пример
<Dictionary>
<Words>
<Deprecated>
<Term PreferredAlternate="LogOn">login</Term>
...
</Deprecated>
...
</Words>
...
</Dictionary>
Термины в узле "Словарь"/ "Слова"/"Нерекомендуемые" применяются к следующим правилам анализа кода:
CA1701: соблюдайте правильность регистра в составных словах строк ресурса
CA1702: для сложных слов следует использовать правильный регистр
Словарь,слова/составные/термины[@CompoundAlternate]
Встроенный словарь определяет некоторые термины как отдельные, дискретные термины, а не составной термин. Чтобы включить термин в список терминов, которые анализ кода идентифицирует как составное слово и указать правильный регистр термина, добавьте термин в качестве внутреннего текста элемента Dictionary/Words/Compound/Term. В атрибуте CompoundAlternate элемента Term укажите отдельные слова, составляющие составной термин, прописав первую букву отдельных слов (pascal case). Обратите внимание, что термин, указанный в внутреннем тексте, автоматически добавляется в список "Словарь", "Слова" или "Дискретные".
Составной термин в элементе Dictionary/Words/Compound/Term не учитывает регистр.
Значение атрибута CompoundAlternate учитывает регистр. Используйте вариант Pascal для составных альтернативных вариантов.
Пример
<Dictionary>
<Words>
<Compound>
<Term CompoundAlternate="CheckBox">checkbox</Term>
...
</Compound>
...
</Words>
...
</Dictionary>
Термины в словаре, слов и составных узлах применяются к следующим правилам анализа кода:
CA1701: соблюдайте правильность регистра в составных словах строк ресурса
CA1702: для сложных слов следует использовать правильный регистр
Словарь/ слова/ДискретныеExceptions/Term
Чтобы исключить термин в списке терминов, которые анализ кода идентифицирует как одно дискретное слово, если термин проверка правилами регистра для составных слов, добавьте термин в качестве внутреннего текста элемента Dictionary/Word/DiscreteExceptions/Term. Термин в dictionary/Words/DiscreteExceptions/Term не учитывает регистр.
Пример
<Dictionary>
<Words>
<DiscreteExceptions>
<Term>checkbox</Term>
...
</DiscreteExceptions>
...
</Words>
...
</Dictionary>
Термины в узле Dictionary/Words/DiscreteExceptions применяются к следующим правилам анализа кода:
CA1701: соблюдайте правильность регистра в составных словах строк ресурса
CA1702: для сложных слов следует использовать правильный регистр
Словарь/акронимы/CasingExceptions/Acronym
Чтобы включить акроним в список терминов, которые анализ кода идентифицирует правильно орфографию и указывает, как акроним, когда термин проверка правилами регистра для составных слов, добавьте термин в качестве внутреннего текста элемента Dictionary/Acronyms/CasingExceptions/Acronym. Акроним в элементе Dictionary/Acronyms/CasingExceptions/Acronym учитывается регистр.
Пример
<Dictionary>
<Acronyms>
<CasingExceptions>
<Acronym>NESW</Acronym> <!-- North East South West -->
...
</CasingExceptions>
...
</Acronyms>
...
</Dictionary>
Термины в узле Dictionary/Acronyms/CasingExceptions применяются к следующим правилам анализа кода:
Применение пользовательского словаря к проекту
В Обозреватель решений используйте одну из следующих процедур:
Чтобы добавить словарь в один проект, щелкните правой кнопкой мыши имя проекта и нажмите кнопку "Добавить существующий элемент". Для типов файлов выберите "Все файлы", а затем укажите файл в диалоговом окне "Добавить существующий элемент ".
Чтобы добавить словарь, общий доступ к двум или нескольким проектам, найдите файл для общего доступа в диалоговом окне "Добавить существующий элемент ", щелкните стрелку вниз на кнопке "Добавить " и нажмите кнопку "Добавить как ссылку".
В Обозреватель решений щелкните правой кнопкой мыши имя файла CustomDictionary.xml и щелкните "Свойства".
В списке действий сборки выберите CodeAnalysisDictionary.
В списке "Копирование в выходной каталог " выберите " Не копировать".
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по