NativeActivity Osztály

Definíció

Absztrakt alaposztály olyan egyéni tevékenységekhez, amelyek végrehajtási logikát implementálnak a Execute(NativeActivityContext) metódus használatával, amely teljes hozzáféréssel rendelkezik a futtatókörnyezet funkcióihoz.

public ref class NativeActivity abstract : System::Activities::Activity
public abstract class NativeActivity : System.Activities.Activity
type NativeActivity = class
    inherit Activity
Public MustInherit Class NativeActivity
Inherits Activity
Öröklődés
NativeActivity
Származtatott

Példák

Az alábbi kódminta egy olyan osztály létrehozását mutatja be, amely a következőtől NativeActivity<TResult>öröklődik: Ez a példa a natív tevékenységmintát használó egyéni összetettből származik .

public sealed class MySequence : NativeActivity
{
    Collection<Activity> children;
    Collection<Variable> variables;
    Variable<int> currentIndex;
    CompletionCallback onChildComplete;

    public MySequence()
        : base()
    {
        this.children = new Collection<Activity>();
        this.variables = new Collection<Variable>();
        this.currentIndex = new Variable<int>();
    }

    public Collection<Activity> Activities
    {
        get
        {
            return this.children;
        }
    }
    public Collection<Variable> Variables
    {
        get
        {
            return this.variables;
        }
    }
    protected override void CacheMetadata(NativeActivityMetadata metadata)
    {
        //call base.CacheMetadata to add the Activities and Variables to this activity's metadata
        base.CacheMetadata(metadata);
        //add the private implementation variable: currentIndex
        metadata.AddImplementationVariable(this.currentIndex);
    }

    protected override void Execute(NativeActivityContext context)
    {
        InternalExecute(context, null);
    }
    void InternalExecute(NativeActivityContext context, ActivityInstance instance)
    {
        //grab the index of the current Activity
        int currentActivityIndex = this.currentIndex.Get(context);
        if (currentActivityIndex == Activities.Count)
        {
            //if the currentActivityIndex is equal to the count of MySequence's Activities
            //MySequence is complete
            return;
        }

        if (this.onChildComplete == null)
        {
            //on completion of the current child, have the runtime call back on this method
            this.onChildComplete = new CompletionCallback(InternalExecute);
        }
        //grab the next Activity in MySequence.Activities and schedule it
        Activity nextChild = Activities[currentActivityIndex];
        context.ScheduleActivity(nextChild, this.onChildComplete);

        //increment the currentIndex
        this.currentIndex.Set(context, ++currentActivityIndex);
    }
}

Konstruktorok

Name Description
NativeActivity()

Ha egy származtatott osztályban implementálják, a származtatott osztály új példányát hozza létre.

Tulajdonságok

Name Description
CacheId

Lekéri a munkafolyamat-definíció hatókörén belül egyedi gyorsítótár azonosítóját.

(Öröklődés forrása Activity)
CanInduceIdle

Lekéri vagy beállít egy értéket, amely jelzi, hogy a tevékenység okozhatja-e a munkafolyamat tétlenségét.

Constraints

Lekéri azoknak a tevékenységeknek a gyűjteményét Constraint , amelyek konfigurálhatók úgy, hogy érvényesítést biztosítsanak a Activity.

(Öröklődés forrása Activity)
DisplayName

Lekéri vagy beállítja a hibakereséshez, az ellenőrzéshez, a kivételkezeléshez és a nyomon követéshez használt rövid nevet.

(Öröklődés forrása Activity)
Id

A munkafolyamat-definíció hatókörében egyedi azonosítót kap.

(Öröklődés forrása Activity)
Implementation

A tevékenység végrehajtási logikája.

ImplementationVersion

Lekéri vagy beállítja a tevékenység implementációs verzióját.

Metódusok

Name Description
Abort(NativeActivityAbortContext)

Származtatott osztályban való implementáláskor a megszakított tevékenységre reagálva hajt végre műveleteket.

CacheMetadata(ActivityMetadata)

Nincs implementálva. Használja inkább a metódust CacheMetadata(NativeActivityMetadata) .

CacheMetadata(NativeActivityMetadata)

Létrehozza és ellenőrzi a tevékenység argumentumainak, változóinak, gyermektevékenységeinek és tevékenységdelegáltjainak leírását.

Cancel(NativeActivityContext)

Származtatott osztályban implementálva a logika futtatásával a tevékenység kecses korai befejezését okozhatja.

Equals(Object)

Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal.

(Öröklődés forrása Object)
Execute(NativeActivityContext)

Származtatott osztályban implementálva futtatja a tevékenység végrehajtási logikáját.

GetHashCode()

Ez az alapértelmezett kivonatoló függvény.

(Öröklődés forrása Object)
GetType()

Lekéri az Type aktuális példányt.

(Öröklődés forrása Object)
MemberwiseClone()

Az aktuális Objectpéldány sekély másolatát hozza létre.

(Öröklődés forrása Object)
OnCreateDynamicUpdateMap(NativeActivityUpdateMapMetadata, Activity)

Eseményt hoz létre a dinamikus frissítés térképének létrehozásakor.

OnCreateDynamicUpdateMap(UpdateMapMetadata, Activity)

Eseményt hoz létre a dinamikus frissítés térképének létrehozásakor.

ShouldSerializeDisplayName()

Azt jelzi, hogy a DisplayName tulajdonság szerializálva legyen-e.

(Öröklődés forrása Activity)
ToString()

Olyan értéket String ad vissza, amely tartalmazza az Id és DisplayName a Activity.

(Öröklődés forrása Activity)
UpdateInstance(NativeActivityUpdateContext)

Frissíti a példányt NativeActivity.

A következőre érvényes: