首先要安装 .NET Compiler Platform SDK
roslyn 想要跑起来不能盲目的用最新版本,库一定要版本对得上 不然 MSBuildWorkspace.Create() 会报错
Visual Studio 2015
.NetFramework 4.6.0
直接在NuGet包管理器下载对应的库版本
Microsoft.Build.15.4.8
Microsoft.Build.Framework.15.4.8
Microsoft.Build.Tasks.Core.15.4.8
Microsoft.Build.Utilities.Core.15.4.8
Microsoft.CodeAnalysis.Common.2.6.0
Microsoft.CodeAnalysis.CSharp.2.6.0
Microsoft.CodeAnalysis.CSharp.Workspaces.2.6.0
Microsoft.CodeAnalysis.Workspaces.Common.2.6.0
发现只要是版本对上了无论2015 还是2017 都可以跑起来
class Program
{
static void Main(string[] args)
{
TestWorkspace();
Console.Read();
}
private static async void TestWorkspace()
{
var ws = MSBuildWorkspace.Create();
string path = @"F:\ConsoleApp1.sln";
Solution s = await ws.OpenSolutionAsync(path);
foreach (var item in s.Projects)
{
foreach (var p in item.Documents)
{
Console.WriteLine(p.FilePath);
}
}
}
}
接下来就可以对项目进行各种分析了