2012-02-03 13 views
8

Jak mogę dodać BuildMessage (y) w niestandardowej BuildActivity?Jak mogę użyć BuildMessage w niestandardowej 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" 
     }; 
    } 
} 

}

Dla WorklowActivity istnieje specjalna WorkflowInvoker ...

Dziękuję bardzo dużo.

Odpowiedz

15

Logging w CodeActivity można zrobić za pomocą CodeActivityContext.

Przykład:

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

TrackBuildMessage jest metoda Extension, które znajdują się w przestrzeni nazw: Microsoft.TeamFoundation.Build.Workflow.Activities

+0

Cześć Jestem obecnie próbuje pokazać wiadomość zbudować dla TFS. Ale ja nie potrafię zlokalizować tę funkcję w moim 'CodeActivityContext context' mam tylko funcction nazwie Tor, który trwa' System.Activities.Tracking.CustomTrackingRecord' – Qpirate

+1

Znalazłem go, nie zrobił wystarczająco google, funkcja opiera się w 'C: \ Program Files (x86) \ Microsoft Visual Studio 10.0 \ Common7 \ IDE \ PrivateAssembly \ nadzieję, że to pomoże komuś innemu – Qpirate

+6

To jest metoda rozszerzenia. Aby uzyskać dostęp do tej funkcji, musisz dodać instrukcję 'using' dla przestrzeni nazw' Microsoft.TeamFoundation.Build.Workflow.Activities'. –

Powiązane problemy