Msbuild Microsoft.Build无法正确重建

Msbuild Microsoft.Build无法正确重建,msbuild,msbuild-4.0,Msbuild,Msbuild 4.0,我们正在修改一个应用程序,它可以在Visual Studio解决方案中重建所有内容。我们使用的是BuildEngine,但由于它已被弃用,我们将使用Microsoft.Build 代码如下所示: var projectCollection = new Microsoft.Build.Evaluation.ProjectCollection(); var globalProperty = new Dictionary<String, String>(); var buildReques

我们正在修改一个应用程序,它可以在Visual Studio解决方案中重建所有内容。我们使用的是BuildEngine,但由于它已被弃用,我们将使用Microsoft.Build

代码如下所示:

var projectCollection = new Microsoft.Build.Evaluation.ProjectCollection();
var globalProperty = new Dictionary<String, String>();
var buildRequest = new Microsoft.Build.Execution.BuildRequestData(Directory.GetFiles(@"Build\", "*.sln").First(), globalProperty, null, new String[] { "Clean", "Build" }, null);

Microsoft.Build.Execution.BuildManager.DefaultBuildManager.Build(new Microsoft.Build.Execution.BuildParameters(projectCollection), buildRequest);

// 2nd time's a charm?
// Microsoft.Build.Execution.BuildManager.DefaultBuildManager.Build(new Microsoft.Build.Execution.BuildParameters(projectCollection), buildRequest);
var projectCollection=new Microsoft.Build.Evaluation.projectCollection();
var globalProperty=新字典();
var buildRequest=new Microsoft.Build.Execution.BuildRequestData(Directory.GetFiles(@“Build\”,“*.sln”).First(),globalProperty,null,新字符串[]{“Clean”,“Build”},null);
Microsoft.Build.Execution.BuildManager.DefaultBuildManager.Build(新的Microsoft.Build.Execution.BuildParameters(projectCollection)、buildRequest);
//第二次是魅力?
//Microsoft.Build.Execution.BuildManager.DefaultBuildManager.Build(新的Microsoft.Build.Execution.BuildParameters(projectCollection)、buildRequest);

但这些项目并未重建。但是,如果Build方法运行两次(如上面注释的代码所示),项目将正确重建。

我一直在解决同样的问题,伙计。我不确定这是否有什么不同,但我正在尝试在添加一个控制器后重新构建一个MVC项目(作为一个文件和.csproj文件中的一个条目)。我确实尝试过你的“第二次的魅力”方法,但没有成功-完全相同的DLL生成。我还尝试在重建之前删除“bin”和“obj”文件夹中的内容,但相同的DLL被放置在项目中,就好像项目中没有任何更改一样。期待一些建议的解决方案!我一直在和同样的问题斗争,伙计。我不确定这是否有什么不同,但我正在尝试在添加一个控制器后重新构建一个MVC项目(作为一个文件和.csproj文件中的一个条目)。我确实尝试过你的“第二次的魅力”方法,但没有成功-完全相同的DLL生成。我还尝试在重建之前删除“bin”和“obj”文件夹中的内容,但相同的DLL被放置在项目中,就好像项目中没有任何更改一样。期待一些建议的解决方案!