У меня есть метод, который запускает MSBuild для создания отдельных проектов, подобных этому.
var startInfo = new ProcessStartInfo
{
WindowStyle = ProcessWindowStyle.Hidden,
FileName = msBuildPath,
Arguments = string.Format(ConfigurationHelper.BuildArguments, buildPath, outputPath, logFilePath)
};
var process = new Process { StartInfo = startInfo };
var result = process.Start();
process.WaitForExit(); //wait for the process to get build results
Другой метод вызывает его для всех проектов, находящихся в списке, с использованием Parallel.Foreach ( Может быть, это нехороший способ). Это становится быстрее, чем использование одного потока, но я хочу знать, построены ли проекты успешно , есть ли зависимости между проектами и их процесс запускается одновременно.