Sdílet prostřednictvím


NativeActivity<TResult>.Execute(NativeActivityContext) Metoda

Definice

Při implementaci v odvozené třídě spustí logiku provádění aktivity.

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)

Parametry

context
NativeActivityContext

Kontext spuštění, ve kterém se aktivita provádí.

Příklady

Následující ukázka kódu ukazuje použití Execute ve třídě, která dědí z NativeActivity<TResult>. Tento příklad je z ukázky negenerového parallelForEach .

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();
    }
}

Platí pro