AnalysisContext Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Kontext zum Initialisieren eines Analysetools. Die Analysetoolinitialisierung kann eine AnalysisContext verwenden, um Aktionen zu registrieren, die bei folgenden Aktionen ausgeführt werden:
- Kompilierungsstart,
- Kompilierungsende,
- Abschluss der Analyse eines Codedokuments,
- Abschluss der semantischen Analyse eines Codedokuments,
- Abschluss der semantischen Analyse eines Symbols,
- Beginn der semantischen Analyse eines Methodentexts oder eines Ausdrucks, der außerhalb eines Methodentexts angezeigt wird,
- Abschluss der semantischen Analyse eines Methodentexts oder eines Ausdrucks, der außerhalb eines Methodentexts angezeigt wird, oder
- Abschluss der semantischen Analyse eines Syntaxknotens.
public ref class AnalysisContext abstract
public abstract class AnalysisContext
type AnalysisContext = class
Public MustInherit Class AnalysisContext
- Vererbung
-
AnalysisContext
Konstruktoren
AnalysisContext() |
Kontext zum Initialisieren eines Analysetools. Die Analysetoolinitialisierung kann eine AnalysisContext verwenden, um Aktionen zu registrieren, die bei folgenden Aktionen ausgeführt werden:
|
Eigenschaften
MinimumReportedSeverity |
Gibt den mindestens gemeldeten Diagnoseschweregrad für diesen Analysekontext an. Analyzer-Diagnose mit einem niedrigeren Schweregrad als diesem Schweregrad werden nicht gemeldet. |
Methoden
ConfigureGeneratedCodeAnalysis(GeneratedCodeAnalysisFlags) |
Konfigurieren Sie den Analysemodus des generierten Codes für dieses Analysetool. Nicht konfigurierte Analysetools verwenden standardmäßig einen geeigneten Standardmodus für generierten Code. Es wird empfohlen, dass das Analysetool diese API mit der erforderlichen GeneratedCodeAnalysisFlags Einstellung aufruft. |
EnableConcurrentExecution() |
Aktivieren Sie die gleichzeitige Ausführung von Analysetools, die von diesem Analysetool registriert wurden. Ein Analysetool, das für die gleichzeitige Ausführung registriert, kann eine bessere Leistung aufweisen als ein nicht gleichzeitiges Analysetool. Ein solches Analysetool muss jedoch sicherstellen, dass seine Aktionen ordnungsgemäß parallel ausgeführt werden können. |
RegisterAdditionalFileAction(Action<AdditionalFileAnalysisContext>) |
Registrieren Sie eine Aktion, die für jedes Nicht-Code-Dokument ausgeführt werden soll. Eine zusätzliche Dateiaktion meldet Diagnostics über die AdditionalText eines Dokuments. |
RegisterCodeBlockAction(Action<CodeBlockAnalysisContext>) |
Registrieren Sie eine Aktion, die nach der semantischen Analyse eines Methodentexts oder eines Ausdrucks außerhalb eines Methodentexts ausgeführt werden soll. Eine Codeblockaktion meldet Diagnostics über Codeblöcke. |
RegisterCodeBlockStartAction<TLanguageKindEnum>(Action<CodeBlockStartAnalysisContext<TLanguageKindEnum>>) |
Registrieren Sie eine Aktion, die zu Beginn der semantischen Analyse eines Methodentexts oder eines Ausdrucks außerhalb eines Methodentexts ausgeführt werden soll. Eine Codeblockstartaktion kann andere Aktionen registrieren und/oder Zustandsinformationen sammeln, die in der Diagnoseanalyse verwendet werden sollen, kann aber selbst keine Diagnostics melden. |
RegisterCompilationAction(Action<CompilationAnalysisContext>) |
Registrieren Sie eine Aktion, die für eine vollständige Kompilierung ausgeführt werden soll. Eine Kompilierungsaktion meldet Diagnostics über .Compilation |
RegisterCompilationStartAction(Action<CompilationStartAnalysisContext>) |
Registrieren Sie eine Aktion, die beim Kompilierungsstart ausgeführt werden soll. Eine Kompilierungsstartaktion kann andere Aktionen registrieren und/oder Zustandsinformationen sammeln, die in der Diagnoseanalyse verwendet werden sollen, kann aber selbst keine Diagnostics melden. |
RegisterOperationAction(Action<OperationAnalysisContext>, ImmutableArray<OperationKind>) |
Registrieren Sie eine Aktion, die nach Abschluss der semantischen Analyse eines IOperation mit einer geeigneten Art ausgeführt werden soll. Eine Vorgangsaktion kann s zu IOperations melden Diagnosticund auch Zustandsinformationen sammeln, die von anderen Vorgangsaktionen oder Codeblockendaktionen verwendet werden. |
RegisterOperationAction(Action<OperationAnalysisContext>, OperationKind[]) |
Registrieren Sie eine Aktion, die nach Abschluss der semantischen Analyse eines IOperation mit einer geeigneten Art ausgeführt werden soll. Eine Vorgangsaktion kann s zu IOperations melden Diagnosticund auch Zustandsinformationen sammeln, die von anderen Vorgangsaktionen oder Codeblockendaktionen verwendet werden. |
RegisterOperationBlockAction(Action<OperationBlockAnalysisContext>) |
Registrieren Sie eine Aktion, die nach der semantischen Analyse eines Methodentexts oder eines Ausdrucks außerhalb eines Methodentexts ausgeführt werden soll. Eine Vorgangsblockaktion meldet Diagnostics über Vorgangsblöcke. |
RegisterOperationBlockStartAction(Action<OperationBlockStartAnalysisContext>) |
Registrieren Sie eine Aktion, die zu Beginn der semantischen Analyse eines Methodentexts oder eines Ausdrucks außerhalb eines Methodentexts ausgeführt werden soll. Eine Aktion zum Starten des Vorgangsblocks kann andere Aktionen registrieren und/oder Zustandsinformationen sammeln, die in der Diagnoseanalyse verwendet werden sollen, kann aber selbst keine Diagnostics melden. |
RegisterSemanticModelAction(Action<SemanticModelAnalysisContext>) |
Registrieren Sie eine Aktion, die nach Abschluss der semantischen Analyse eines Dokuments ausgeführt werden soll, das auf dem SemanticModel des Dokuments ausgeführt wird. Eine semantische Modellaktion meldet Diagnostics über das Modell. |
RegisterSymbolAction(Action<SymbolAnalysisContext>, ImmutableArray<SymbolKind>) |
Registrieren Sie eine Aktion, die nach Abschluss der semantischen Analyse eines ISymbol mit einer geeigneten Art ausgeführt werden soll. Eine Symbolaktion meldet Diagnostics about ISymbols. |
RegisterSymbolAction(Action<SymbolAnalysisContext>, SymbolKind[]) |
Registrieren Sie eine Aktion, die nach Abschluss der semantischen Analyse eines ISymbol mit einer geeigneten Art ausgeführt werden soll. Eine Symbolaktion meldet Diagnostics about ISymbols. |
RegisterSymbolStartAction(Action<SymbolStartAnalysisContext>, SymbolKind) |
Registrieren Sie eine Aktion, die zu Beginn der semantischen Analyse eines ISymbol und seiner Member mit einer geeigneten Art ausgeführt werden soll. |
RegisterSyntaxNodeAction<TLanguageKindEnum>(Action<SyntaxNodeAnalysisContext>, ImmutableArray<TLanguageKindEnum>) |
Registrieren Sie eine Aktion, die nach Abschluss der semantischen Analyse eines SyntaxNode mit einer geeigneten Art ausgeführt werden soll. Eine Syntaxknotenaktion kann s zu SyntaxNodes melden Diagnosticund auch Zustandsinformationen sammeln, die von anderen Syntaxknotenaktionen oder Codeblockendaktionen verwendet werden. |
RegisterSyntaxNodeAction<TLanguageKindEnum>(Action<SyntaxNodeAnalysisContext>, TLanguageKindEnum[]) |
Registrieren Sie eine Aktion, die nach Abschluss der semantischen Analyse eines SyntaxNode mit einer geeigneten Art ausgeführt werden soll. Eine Syntaxknotenaktion kann s zu SyntaxNodes melden Diagnosticund auch Zustandsinformationen sammeln, die von anderen Syntaxknotenaktionen oder Codeblockendaktionen verwendet werden. |
RegisterSyntaxTreeAction(Action<SyntaxTreeAnalysisContext>) |
Registrieren Sie eine Aktion, die nach Abschluss der Analyse eines Codedokuments ausgeführt werden soll. Eine Syntaxstrukturaktion meldet Diagnostics über die SyntaxTree eines Dokuments. |
TryGetValue<TValue>(AdditionalText, AdditionalTextValueProvider<TValue>, TValue) |
Versucht, den zwischengespeicherten Wert zu berechnen oder abzurufen, der vom angegebenen |
TryGetValue<TValue>(SourceText, SourceTextValueProvider<TValue>, TValue) |
Versucht, den zwischengespeicherten Wert zu berechnen oder abzurufen, der vom angegebenen |