Share via


Executando um Workflow criado com XML no WF4

Olá pessoal,

Vou demonstrar como executar um Workflow criado com XML, mas desta vez utilizando o Windows Workflow Foundation 4.0.

1o passo: criar uma solução com um WF e uma atividade customizada, conforme print abaixo.

image

2o passo: criar a atividade customizada, no exemplo abaixo fiz uma atividade que imprime no console.

    1:  public sealed class WriteLineActivity : CodeActivity
    2:  {
    3:      public InArgument<string> Text { get; set; }
    4:   
    5:      protected override void Execute(CodeActivityContext context)
    6:      {
    7:          Console.WriteLine(context.GetValue(this.Text));
    8:      }
    9:  }

3o passo: criar um workflow utilizando Xml.

    1:  <Activity xmlns:a="clr-namespace:ActivityLibrary1;assembly=ActivityLibrary1" ...>
    2:    <a:WriteLineActivity Text="Hello, World" />
    3:  </Activity>

4o passo: criar e executar o workflow através do ActivityXamlServices.

    1:  var wf = ActivityXamlServices.Load("Workflow1.xml");
    2:  WorkflowInvoker.Invoke(wf);

O download do código fonte pode ser feito aqui.