【问题标题】:Roslyn semantic model with solution带有解决方案的 Roslyn 语义模型
【发布时间】:2013-07-13 04:41:53
【问题描述】:

我加载我的解决方案:

var workspace = Workspace.LoadSolution(path);

现在我想用这个解决方案中的任何文件创建一个语义模型。我怎样才能做到这一点?我尝试使用 LINQ,但我现在不知道如何创建语义模型来分析类声明等。

ISolution semanticModel = tree.GetSemanticModel();

不工作;(

【问题讨论】:

    标签: c# roslyn


    【解决方案1】:

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

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

    【讨论】:

    • 这样做我在尝试解析与当前文档不同的 AST 时遇到错误。似乎语义模型与文档有关,而不是解决方案
    • 语义模型与语法树相关,通常与单个文档相关
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-04-01
    • 2015-12-13
    • 1970-01-01
    • 2015-04-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多