Пошаговое руководство. Проверка управляемого кода на наличие дефектов
В данном пошаговом руководстве описывается процесс проверки управляемого проекта на наличие дефектов кода при помощи средства анализа кода.
Данное руководство содержит пошаговые инструкции по процессу анализа кода для проверки сборок управляемого кода .NET на соответствие правилам разработки решений Microsoft .NET.
В данном пошаговом руководстве:
- Анализ предупреждений о дефектах кода и устранение их причины.
Обязательные компоненты
- Visual Studio Premium.
Создание библиотеки классов
Создание библиотеки классов |
|
Анализ проекта
Проверка управляемого проекта на наличие дефектов в коде
Выберите проект CodeAnalysisManagedDemo в обозревателе решений.
В меню Проект выберите пункт Свойства.
На экран будет выведена страница свойств проекта CodeAnalysisManagedDemo.
Выберите пункт Анализ кода.
Выберите пункт Включить анализ кода в построении (определяет константу CODE_ANALYSIS).
В раскрывающемся списке выберите команду Запустить этот набор правил и выберите Все правила Майкрософт.
Выберите пункт Сохранить выбранные элементы в меню Файл, затем закройте страницу свойств проекта ManagedDemo.
Выберите пункт Построить ManagedDemo в меню Построение.
В окнах Список ошибок и Вывод отобразятся предупреждения построения проекта CodeAnalysisManagedDemo.
Исправление проблем анализа кода
Исправление нарушений правил анализа кода
В меню Вид выберите пункт Список ошибок.
В зависимости от выбранного профиля разработчика, возможно, понадобится навести указатель на пункт Другие окна в меню Вид и затем выбрать пункт Список ошибок.
Выберите пункт Показать все файлы в обозревателе решений.
После этого разверните узел "Свойства" и откройте файл AssemblyInfo.cs.
Используйте сведения из следующей таблицы для устранения причины предупреждений:
Предупреждения |
Устранение причины |
---|---|
CA1014: помечайте сборки атрибутом CLSCompliantAttribute: Microsoft.Design. Проект "demo" должен быть помечен атрибутом CLSCompliantAttribute и иметь значение "true". |
|
CA1032: реализуйте стандартные конструкторы исключения: Microsoft.Design. Добавьте следующий конструктор в данный класс: public demo(String) |
|
CA1032: реализуйте стандартные конструкторы исключения: Microsoft.Design. Добавьте следующий конструктор в данный класс: public demo(String, Exception) |
|
CA1032: реализуйте стандартные конструкторы исключения: Microsoft.Design. Добавьте следующий конструктор в данный класс: protected demo(SerializationInfo, StreamingContext) |
|
CA1032: реализуйте стандартные конструкторы исключения: Microsoft.Design. Добавьте следующий конструктор в данный класс: public demo() |
|
CA1709: идентификаторы должны иметь правильный регистр: Microsoft.Naming. Исправьте регистр имени пространства имен "testCode", заменив его на "TestCode". |
|
CA1709: идентификаторы должны иметь правильный регистр: Microsoft.Naming. Исправьте регистр имени типа "demo", заменив его на "Demo". |
|
CA1709: идентификаторы должны иметь правильный регистр: Microsoft.Naming. Исправьте регистр имени элемента "item", заменив его на "Item". |
|
CA1710: идентификаторы должны иметь правильные суффиксы: Microsoft.Naming. Измените имя "testCode.demo" на имя, заканчивающееся на "Exception". |
|
CA2210: сборки должны иметь допустимые строгие имена: Подпишите "ManagedDemo" ключом строгого имени. |
|
CA2237: пометьте типы ISerializable атрибутом SerializableAttribute: Microsoft.Usage. Добавьте атрибут [Serializable] в тип "demo", поскольку данный тип реализует ISerializable. |
|
Исключение предупреждений анализа кода
Исключение предупреждений о дефектах кода
Выберите остальные предупреждения в окне Список ошибок, а затем щелкните правой кнопкой мыши, подведите указатель к пункту Подавить сообщения, а затем выберите В файле проекта для блокируемых предупреждений. Дополнительные сведения см. в разделе Практическое руководство. Отключение предупреждений при помощи пункта меню.
Постройте проект заново.
Построение проекта теперь будет проходить без предупреждений и ошибок.