MSBuild在OpenSolutionAsync()上的WPF中抛出AggregateException

时间:2015-09-18 10:42:56

标签: c# wpf msbuild roslyn

我在运行时使用MSBuild加载解决方案:

    private Solution LoadSolution(string solutionPath) {
        var msw = MSBuildWorkspace.Create();
        var solution = msw.OpenSolutionAsync(solutionPath).Result;
        return solution;
    }

当我在控制台应用程序中尝试它时,它会起作用,但是当我尝试在引用AggregateException方法所在的控制台应用程序的WPF应用程序中运行它时,它会抛出LoadSolution。 / p>

我尝试使用async / await来做,但每当我这样做时,我从未收到该线程的结果。

我收到的错误说明:

第一个例外:

One or more errors occurred.

内部异常:

{"Object reference not set to an instance of an object."}

框架版本4.5.2。

1 个答案:

答案 0 :(得分:1)

GitHub Roslyn issue tracker中提到的安装Microsoft.CodeAnalysis v1.0.0.0的决议对我有用。我试图执行.NET 4.5.2控制台应用程序中问题中提到的代码。