Rolsyn庫版本問題 與 MSBuildWorkspace.Create()報錯問題

首先要安裝 .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);
                }
            }
        }
    }

 接下來就可以對項目進行各種分析了


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章