MSBuildWorkspace.Create() - 支持的语言为零

时间:2014-07-07 15:02:44

标签: c# roslyn

我使用roslyn Formatter.Format()方法格式化一些c#。

其中一个参数采用Workspace对象,可以使用MSBuildWorkspace.Create()创建。

然而,当我运行代码时,我得到一个运行时异常,因为工作区返回时没有支持的语言。如果我在控制台应用程序中运行它,它工作正常。

有什么想法吗?

1 个答案:

答案 0 :(得分:6)

确保在您的应用中部署Microsoft.CodeAnalysis.CSharp.Workspaces.dll和/或Microsoft.CodeAnalysis.VisualBasic.Workspaces.dll。

工作区通过加载这些程序集来动态发现它支持的语言。