Roslyn中有哪些不同的工作区,它们之间的区别是什么?我只知道MSBuildWorkspace和AdhocWorkspace。工作区如何影响Roslyn分析?我已经阅读过需要DnxWorkspace用于MVC项目,但我还没有尝试过。
一个Roslyn工作区是访问解决方案模型的共同点。工作区之间的差异主要在于如何构建解决方案模型,无论是从读取文件中构建还是其他方式。MSBuildWorkspace会为您从msbuild解决方案或项目文件构建解决方案模型。AdhocWorkspace需要您通过API调用手动构建解决方案,添加项目和文档。DnxWorkspace通过阅读早期的dotnet core project.json文件来构建解决方案模型。当Roslyn在Visual Studio内部使用时,它使用一个VisualStudioWorkspace,从VS项目系统获取解决方案模型。
Microsoft.CodeAnalysis.Workspaces.Dnx
。请明确您想要实现什么。 - Venkata DorisalaDnxWorkspace
适用于_.Net Core项目_,无论其类型如何。它知道如何加载它们的引用和其他属性。 - SLaks