我编写了一个自定义的MSBuild任务,称之为TaskA,它解析文件并对其进行一些处理.我现在想编写另一个MSBUild任务,称之为TaskB,在其中使用TaskA.我知道我可以像使用普通类一样使用TaskA,只需从TaskB调用它的execute方法.但你认为这是合情合理的吗?在执行TaskB时,是否仍会记录来自TaskA的日志消息?
是的,这似乎是合理的,是的仍然会记录来自TaskA的日志消息.不要忘记将taskA.BuildEngine设置为taskB one.
public class TaskA : Task { public override bool Execute() { Log.LogMessage("Task A"); return true; } } public class TaskB : Task { public override bool Execute() { Log.LogMessage("Task B"); TaskA taskA = new TaskA(); taskA.BuildEngine = BuildEngine; taskA.Execute(); return true; } }