Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

Método Activity.Execute (ActivityExecutionContext)

 

Publicado: octubre de 2016

Llamado por el flujo de trabajo en tiempo de ejecución para ejecutar una actividad.

Espacio de nombres:   System.Workflow.ComponentModel
Ensamblado:  System.Workflow.ComponentModel (en System.Workflow.ComponentModel.dll)

protected internal virtual ActivityExecutionStatus Execute(
	ActivityExecutionContext executionContext
)

Parámetros

executionContext
Type: System.Workflow.ComponentModel.ActivityExecutionContext

La clase ActivityExecutionContext que se va asociar con esta clase Activity y la ejecución.

Valor devuelto

Type: System.Workflow.ComponentModel.ActivityExecutionStatus

ActivityExecutionStatus de la tarea de ejecución, que determina si la actividad permanece en estado de ejecución, o transiciones al estado cerrado.

The T:System.Workflow.ComponentModel.ActivityExecutionContext is used to get information about the currently running activity and workflow, and is also used to obtain services from the runtime environment.

The running occurs synchronously, returning control to the caller when the activity is completed or reaches an intermediate state.

The following code example shows an implementation of the Execute method. In this example, an Outlook e-mail message is constructed and sent. This example is from the Outlook Workflow Wizard SDK sample. crdefaultOutlook Workflow Wizard Sample.

protected override ActivityExecutionStatus Execute(ActivityExecutionContext context)
{
    // Create an Outlook Application object. 
    Outlook.Application outlookApp = new Outlook.Application();

    Outlook._MailItem oMailItem = (Outlook._MailItem)outlookApp.CreateItem(Outlook.OlItemType.olMailItem);
    oMailItem.To = outlookApp.Session.CurrentUser.Address;
    oMailItem.Subject = "Auto-Reply";
    oMailItem.Body = "Out of Office";

    //adds it to the outbox  
    if (this.Parent.Parent is ParallelActivity)
    {
        if ((this.Parent.Parent.Parent.Activities[1] as DummyActivity).TitleProperty != "")
        {
            MessageBox.Show("Process Auto-Reply for Email");
            oMailItem.Send();
        }
    }
    else if (this.Parent.Parent is SequentialWorkflowActivity)
    {
        if ((this.Parent.Parent.Activities[1] as DummyActivity).TitleProperty != "")
        {
            MessageBox.Show("Process Auto-Reply for Email");
            oMailItem.Send();
        }
    }
    return ActivityExecutionStatus.Closed;
}

.NET Framework
Disponible desde 3.0
Volver al principio
Mostrar: