本文整理汇总了C#中Params.Callback方法的典型用法代码示例。如果您正苦于以下问题:C# Params.Callback方法的具体用法?C# Params.Callback怎么用?C# Params.Callback使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Params
的用法示例。
在下文中一共展示了Params.Callback方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Execute
public static async Task<bool> Execute(Params @params)
{
var arguments = string.Join(" ",
string.Format("\"{0}\"", @params.SolutionPath),
@params.Args,
string.Format(MsBuildArgs,
@params.Configuration,
@params.Platform,
@params.Verbosity));
var process = new Process
{
StartInfo = new ProcessStartInfo(MsBuildPath)
{
Arguments = arguments,
CreateNoWindow = true,
RedirectStandardOutput = true,
UseShellExecute = false
}
};
process.OutputDataReceived += (sender, args) => @params.Callback(args.Data);
process.Start();
process.BeginOutputReadLine();
while (!process.HasExited)
{
if (@params.CancellationToken.IsCancellationRequested)
{
process.Kill();
return false;
}
await Task.Delay(50, @params.CancellationToken);
}
return process.ExitCode == 0;
}