C# Roslyn语义模型及其求解

C# Roslyn语义模型及其求解,c#,roslyn,C#,Roslyn,我加载我的解决方案: var workspace = Workspace.LoadSolution(path); 现在我想用这个解决方案中的任何文件创建一个语义模型。我该怎么做?我尝试使用LINQ,但现在不知道如何创建语义模型来分析类声明等 ISolution semanticModel = tree.GetSemanticModel(); 不工作;(您可以从文档实例获取语义模型 var someSemanticModel = workspace.CurrentSolution

我加载我的解决方案:

var workspace = Workspace.LoadSolution(path);
现在我想用这个解决方案中的任何文件创建一个语义模型。我该怎么做?我尝试使用LINQ,但现在不知道如何创建语义模型来分析类声明等

ISolution semanticModel = tree.GetSemanticModel();

不工作;(

您可以从文档实例获取语义模型

var someSemanticModel = 
    workspace.CurrentSolution
             .Projects.First()
             .Documents.First()
             .GetSemanticModel();

这样做时,我在尝试解析属于与当前文档不同的AST的内容时出错。似乎语义模型与文档相关,而不是解决方案语义模型与语法树相关,语法树通常与单个文档相关