“预期的全球线。”使用Roslyn加载解决方案时出现异常

时间:2015-08-03 06:56:45

标签: c# roslyn

我正在学习罗斯林并第一次尝试。我编写了一个小代码片段来加载解决方案并获取对工作区的引用。

IWorkspace workspace = Workspace.LoadSolution(solutionPath);

foreach (IProject project in workspace.CurrentSolution.Projects)
{
    CommonCompilation objCompilation = project.GetCompilation();
}
return workspace;

但是我在第一行得到了例外。例外情况如下。

  

消息:预期全球热线。

     

堆栈跟踪:
在   Roslyn.Services.Host.SolutionFile.ParseGlobal(TextReader reader)
  在Roslyn.Services.Host.SolutionFile.Parse(TextReader reader)
在   Roslyn.Services.Host.LoadedWorkspace.LoadSolution(SolutionId   solutionId,String filePath)
在   Roslyn.Services.Host.LoadedWorkspace.OpenSolution(String fileName)
  在Roslyn.Services.Host.LoadedWorkspace.LoadSolution(String   solutionFileName,String配置,String平台,布尔值   enableFileTracking)
在   Roslyn.Services.Workspace.LoadSolution(String solutionFileName,String   配置,字符串平台,布尔值enableFileTracking)
在   Ros2.Program.GetWorkspace(String solutionPath)in   c:\ users \ amnatu \ documents \ visual studio   2015 \ Projects \ Ros2 \ Ros2 \ Program.cs:第30行

referred to this link显示了我遇到的同样问题。但是,删除EndProjectGlobal之间空格的解决方案在我的情况下并不适用,因为我的解决方案文件之间没有任何空格。

我在这里遗漏了什么吗?
有关如何解决这个问题的任何建议吗?

1 个答案:

答案 0 :(得分:0)

对延迟回复表示道歉。 @JoshVarty的评论帮助我理解了这个问题。

我确实使用了过时的版本,不得不使用最新的Microsoft.CodeAnalysis库。在我做了这些更改并相应地更新了所有类之后,一切都运行良好。

谢谢JoshVarty。!