Как я могу использовать BuildMessage в пользовательском BuildActivity? - PullRequest
8 голосов
/ 03 февраля 2012

Как я могу добавить BuildMessage (s) в пользовательскую BuildActivity?

[BuildActivity(HostEnvironmentOption.Agent)]
public sealed class InvokeDotNetReactor : CodeActivity
{
    [RequiredArgument]
    public InArgument<string> SourcesDirectory { get; set; }

    protected override void Execute(CodeActivityContext context)
    {
        ...
        BuildMessage bm = new BuildMessage()
        {
            Importance = BuildMessageImportance.High,
            Message = "Hello From Custom TFS Build Activity"
        };
    }
}

}

Для WorklowActivity есть специальный WorkflowInvoker ...

Спасибо большое.

1 Ответ

15 голосов
/ 03 февраля 2012

Вход в CodeActivity можно выполнить с помощью CodeActivityContext.

Пример:

protected override void Execute(CodeActivityContext context)
{
    context.TrackBuildMessage("Hello from Custom TFS Build Activity", BuildMessageImportance.High);
}

TrackBuildMessage - это метод расширения, который можно найти в пространстве имен: Microsoft.TeamFoundation.Build.Workflow.Activities

...