C# 使用BuildEngine传递MsBuild命令行参数

C# 使用BuildEngine传递MsBuild命令行参数,c#,msbuild,msbuild-buildengine,C#,Msbuild,Msbuild Buildengine,我使用以下代码从另一个C应用程序构建项目: var buildEngine = new Engine(); buildEngine.RegisterLogger(new ConsoleLogger()); var success = buildEngine.BuildProjectFile(pathToCsProjFile); if(!success) { Log.LogIt("On Noes! We Broke!"); } else { Log.LogIt("It Work

我使用以下代码从另一个C应用程序构建项目:

var buildEngine = new Engine();

buildEngine.RegisterLogger(new ConsoleLogger());

var success = buildEngine.BuildProjectFile(pathToCsProjFile);
if(!success)
{
    Log.LogIt("On Noes! We Broke!");
}
else
{
    Log.LogIt("It Worked!!!!!!");
}
目前它构建默认配置调试,但我希望它构建发布版本。如果从命令行调用MsBuild,我会执行以下操作:

C:\Windows\WinFX\v3.5>msbuild.exe *.proj /ToolsVersion:3.5 /p:Configuration=Release

如何将该配置开关传递给生成引擎?

使用BuildProjectFile的其他重载实现之一。我相信这一点。创建BuildPropertyGroup并添加所需的属性。在本例中,“配置”=“发布”

使用BuildProjectFile的其他重载实现之一。我相信这一点。创建BuildPropertyGroup并添加所需的属性。在这种情况下,“配置”=“发布”

您需要设置属性,类似这样的操作应该可以实现以下目的:

var pathToCsProjFile = "";
var buildEngine = new Engine();
var project = new Project(buildEngine);
project.Load(pathToCsProjFile);
project.SetProperty("Configuration", "Release");

var success = project.Build();

您需要设置属性,类似这样的操作应该可以实现以下目的:

var pathToCsProjFile = "";
var buildEngine = new Engine();
var project = new Project(buildEngine);
project.Load(pathToCsProjFile);
project.SetProperty("Configuration", "Release");

var success = project.Build();