首先要安裝 .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);
}
}
}
}
接下來就可以對項目進行各種分析了