编写使用其他自定义MSBuild任务的自定义MSBuild任务

Dra*_*aco 4 msbuild

我编写了一个自定义的MSBuild任务,称之为TaskA,它解析文件并对其进行一些处理.我现在想编写另一个MSBUild任务,称之为TaskB,在其中使用TaskA.我知道我可以像使用普通类一样使用TaskA,只需从TaskB调用它的execute方法.但你认为这是合情合理的吗?在执行TaskB时,是否仍会记录来自TaskA的日志消息?

Jul*_*rau 7

是的,这似乎是合理的,是的仍然会记录来自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;
    }
}
Run Code Online (Sandbox Code Playgroud)