獲得語義模型
有一些方法來獲得 sematic 模型。
-
來自
Document級Document document = ...; SemanticModel semanticModel = await document.GetSemanticModelAsync(); -
來自
CompilationclassCSharpCompilation compilation = ...; var semanticModel = await compilation.GetSemanticModel(syntaxTree); -
從一個
AnalysisContext。例如,在DiagnosticAnalyzer中你可以做到:public override void Initialize(AnalysisContext context) { context.RegisterSemanticModelAction(x => { var semanticModel = x.SemanticModel; // Do magical magic here. }); }