Microsoft.SqlServer.Dac.CodeAnalysis Пространство имен

Классы

Имя Описание
CodeAnalysisResult

Результаты Code Analysis для конкретной модели. Будет включать все SqlRuleProblemнайденные значения, в дополнение к любым ошибкам, которые произошли во время анализа

CodeAnalysisRuleSettings

Параметры, используемые для настройки правил, используемых во время анализа.

Перед началом анализа этот объект параметров будет применен к правилам, обнаруженным службой анализа. Если параметр DisableRulesNotInSettings имеет значение true, то все правила, не включенные в эти параметры, будут отключены и не выполняются во время анализа.

Эти параметры применяются путем вызова ApplySettingsToRules(IEnumerable<RuleConfiguration>) метода в правилах, возвращаемых подсистемой.

CodeAnalysisService

Служба, которая выполняет анализ кода в модели и предоставляет результаты вызывающей службе.

Обратите внимание, что этот класс не является потокобезопасным, так как несколько имитаций вызовов Analyze(TSqlModel) не поддерживаются. Однако можно вызвать Cancel() из потока, пока отдельный поток ожидает Analyze(TSqlModel) завершения метода.

CodeAnalysisServiceFactory

Класс фабрики CodeAnalysisService , поддерживающий создание объектов.

CodeAnalysisServiceSettings

Определяет необязательные параметры конфигурации для a CodeAnalysisService. Это может определить, какие правила выполняются, как подавлять определенные проблемы и где сохранять результаты.

Эти параметры также можно задать CodeAnalysisService после его создания, но включены здесь, чтобы сделать строительство более удобным.

ExportCodeAnalysisRuleAttribute

Атрибут, определяющий экспорт правила и метаданные об этом правиле. Реализует ISqlAnalysisRuleMetadata, который следует использовать на стороне импорта, чтобы обеспечить согласованность типов

ProblemSuppressionException

Представляет исключение, которое произошло при выполнении теста подавления проблемы правила.

ProjectProblemSuppressor

Представляет средство подавления проблем, используемое проектами SSDT. Метод ShouldSuppressProblem можно передать ShouldSuppressProblem для использования этого класса.

Это считывает сведения о подавлении из файла с соответствующим SuppressionFilename именем ("StaticCodeAnalysis.SuppressMessages.xml") в корневом каталоге.

Все относительные пути будут разрешаться относительно папки проекта, определенной в конструкторе.

RuleConfiguration

Указывает, как следует настроить правило— следует ли включить или отключить это правило? Какая серьезность должна применяться для правила?

RuleDescriptor

Описывает правило, обнаруженное подсистемой правил, и поддерживает конфигурацию его свойств. Дескрипторы наследуют свойства от RuleConfiguration, чтобы поддерживать включение или отключение правила во время анализа и указание серьезности проблем, созданных правилом.

Этот класс не предназначен для подклассов внешними пользователями — экземпляры RuleDescriptor создаются службой анализа.

RuleException

Представляет исключение, которое может возникать во время выполнения анализа кода

SqlAnalysisRule

Базовый класс для всех типов правила анализа. Правило анализа анализирует элемент модели или модели и возвращает список проблем, обнаруженных во время анализа.

SqlCodeAnalysisRule

Базовый класс для правил анализа статического кода SQL. Правило анализа анализирует элемент модели или модели и возвращает список проблем, обнаруженных во время анализа.

Реализация классов должна иметь определенный ExportCodeAnalysisRuleAttribute для определения класса определение класса для обнаружения и использования во время анализа кода.

SqlRuleExecutionContext

Определяет поля, необходимые для анализа, включая модель схемы и элемент модели для анализа.

SqlRuleProblem

Описывает проблему, обнаруженную правилом во время анализа. Содержит соответствующие сведения, такие как правило, которое обнаружило проблему, SqlObject, вызывающее проблему, серьезность и отображаемое сообщение об ошибке.

Сведения о позиции источника (имя источника, начальная строка и столбец) изначально выводятся на ModelElement основе и Fragment передаются в конструктор. Обратите внимание, что если передается, начальная Fragment строка или столбец для этого TSqlFragment будет использоваться (если присутствует), в противном случае TSqlObjectзначения будут использоваться (если они присутствуют). Обратите внимание, что некоторые модели, такие как созданные из dacpac, могут не иметь сведений о позиции источника.

SqlRuleProblemSuppressionContext

Сведения о контексте для подавления проблемы SCA

SuppressedProblemInfo

Сведения о проблеме, подавляемой для определенного источника. Эти сведения включают имя источника и правило, проблемы которого должны быть отключены.

Интерфейсы

Имя Описание
ISqlAnalysisRuleMetadata

Метаданные, описывающие правило, — его пространство имен, идентификатор, область и т. д.

Перечисления

Имя Описание
CodeAnalysisModelValidationMode

Определяет проверку, выполняемую в модели до анализа кода.

SqlRuleProblemSeverity

Тип сообщения для проблем с отчетами

SqlRuleScope

Область, проверяемая правилом анализа статического кода.