NativeActivity<TResult>.Execute(NativeActivityContext) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Cuando se implementa en una clase derivada, ejecuta la lógica de ejecución de la actividad.
protected:
abstract void Execute(System::Activities::NativeActivityContext ^ context);
protected abstract void Execute (System.Activities.NativeActivityContext context);
abstract member Execute : System.Activities.NativeActivityContext -> unit
Protected MustOverride Sub Execute (context As NativeActivityContext)
Parámetros
- context
- NativeActivityContext
Contexto de ejecución en el que se ejecuta la actividad.
Ejemplos
El siguiente ejemplo de código muestra cómo utilizar Execute en una clase que hereda de NativeActivity<TResult>. Este ejemplo procede del ejemplo ParallelForEach no genérico .
protected override void Execute(NativeActivityContext context)
{
IEnumerable values = this.Values.Get(context);
if (values == null)
{
throw new InvalidOperationException("ParallelForEach requires a non-null Values argument.");
}
IEnumerator valueEnumerator = values.GetEnumerator();
CompletionCallback onBodyComplete = new CompletionCallback(OnBodyComplete);
while (valueEnumerator.MoveNext())
{
if (this.Body != null)
{
context.ScheduleAction(this.Body, valueEnumerator.Current, onBodyComplete);
}
}
IDisposable disposable = valueEnumerator as IDisposable;
if (disposable != null)
{
disposable.Dispose();
}
}